====== Requirement ====== We should be able to stream to large number of concurrent viewers for all our video content. ===== Options ===== ==== For desktop - ==== **1) Red5 -** We use red5 for now from the collab server. Through results it was observed that red5 on a Quad core machine can handle upto 2000+ concurrent streams. (Ref - https://groups.google.com/forum/#!topic/red5interest/3rtwQZDPdIs) - One thing we can do as the concurrent users increase is to move streaming to a dedicated red5 server. - There is no simple way to load balance red5 servers as of now. We need to explore more on this and may be build a light weight rtmp load balancer for red5. OR there is a paid solution for red5 load balancing (http://red5pro.com/). We can use this if helps. **2) Wowza and FMS** - They come with load balancer support and scale well foe streaming. Implementing own hosted wowza or FMS streaming is just a configuration change. No code change is needed for us. **3) Amazon Cloud Front -** This scales well and needs some code change to copy our videos to Amazon servers. ===== For Mobiles ===== On mobile devices we use apple HLS streaming which means apache web server serves the videos. So, this just scales like our rest of the application where we add more app servers and load balance them.