Techniques For Increasing Reliability And Scalability Of Live Streaming Systems