I need to implement the following scenario. I need to build a service to manage IP security cameras. This service should be based on Amazone WS. The number of cameras is not constant. It is expected that the number of cameras will grow (possibly up to several hundred). Most of the camera's streams will be recorded to the S3 storage(via S3FS) for further VOD streaming.
I have already implemented the above scenario for a single server and 3-4 simultaneous streams and it seems everything is working well. But now I need to add load balancing and auto scaling, since the number of concurrent live streams, recordings and vod streams is not constant and can vary quite widely.
Are there any solutions or advice on how to implement this scenario?
Also I have additional questions:
1) At the moment I've made all using the MPEG-Dash live/vod streaming. Will the load balancing operate with MPEG-Dash? Or should I use Flash?
2) The system must be highly reliable. Is there any way to automatically restart the live streaming and recording when the server is restarted? I mean some default property for stream without having to manually edit StartupStreams.xml
In this scenario, you might be best served by the
Amazon Elastic Load Balancing option. This works well with Amazon's auto-scaling features and should work with all protocols.
There's not a default property to automatically add streams to the StartupStreams.xml file but adding the streams to StartupStreams.xml should force these streams to connect upon startup and then if "Record all incoming streams" is enabled on the Application, recording should start at the same time.