You should use Firebase Push framework to send messages while your app is not running.
Once your app is running then you can use WebSockets + regular handlers to send messages. WebSockets are used for server events and regular handlers can be used to send larger pieces of data.
As your app grows you can add more servers to the backend.