The internet is a layer cake of technologies and protocols. At a fundamental level, the internet runs on the TCP/IP protocol. It’s a packet based system. When your browser requests a file from a web server, that server chops up the file into tiny pieces known as packets and puts them on the network labeled with your machine’s address as its destination.
That system works incredibly well for receiving a file from a web server. If some of the packets arrive out of order, that’s not a problem. If one is lost, it can be sent again.
There are no guarantees in a packet based system. If a flood of new packets show up, the system can slow down and you may experience a lag in the response time. This can be annoying when visiting a blog that is slow to load, but it’s not a ruined experience. Streaming video, on the other hand, does not degrade elegantly in this situation. No consumer wants to have their experience interrupted by a spinning wheel. Traffic can be spiky and unpredictable, especially around live events. The stakes are high for building a scalable, effective streaming video solution.
Amit Mishra is a member team at FOX which is responsible for building platform-to-live stream content across all the FOX properties. In this episode we discuss some of the technical milestones on delivering this platform and why golang was the right choice.
Sponsorship inquiries: sponsor@softwareengineeringdaily.com
The post Scalable Streaming Video with Amit Mishra appeared first on Software Engineering Daily.