I have configured a simple live streaming service, for a limited broadcaster, according to this schema:
There is a "origin" server where I've installed the NGINX and RTMP modules. This server receives RTMP streams and converts them to HLS on different sizes (360p, 720p). The web server hosts only the website that reproduce these HLS video.
I'm planning to significantly increase broadcasters and, in order to ensure the correct processing of all sources, I would like to improve servers configurations. Around the web, I found little informations and I hypothesized this configuration:
The "origin" server will only receive RTMP streams. Two or more "edge" servers pull data from origin and convert them to HLS format (in multiple resolutions). The web server hosts only the website that reproduce these HLS video.
My questions are: 1. All "edge" servers must convert the RTMP stream to HLS format in multiple resolutions? Or one edge server can convert a RTMP stream to HLS 360p and other edge server can convert the RTMP stream to HLS 720p?
After the RTMP-HLS conversions, HLS 360p files must be stored on the same server where are stored the HLS 720p files?
To play videos from the web server is enough to introduce a balancing node between the edges servers and the webserver?