<story><title>Justin.tv&apos;s Live Video Broadcasting Architecture (2010)</title><url>http://highscalability.com/blog/2010/3/16/justintvs-live-video-broadcasting-architecture.html</url></story><parent_chain></parent_chain><comment><author>glacials</author><text>I worked at Twitch from 2014 to 2018. I was never on the video team, but here are some details that have changed.&lt;p&gt;Video:&lt;p&gt;- Everything is migrated from RTMP to HLS; RTMP couldn&amp;#x27;t scale across several consumer platforms&lt;p&gt;- This added massive delay (~30+s) early on, the video team has been crushing it getting this back down to the now sub-2s&lt;p&gt;- Flash is dead (now HTML5)&lt;p&gt;- F5 storms (&amp;quot;flash crowds&amp;quot;) are still a concern teams design around; e.g. 900k people hitting F5 after a stream blips offline due to the venue&amp;#x27;s connection&lt;p&gt;- afaik Usher is still alive and well, in much better health today&lt;p&gt;- Most teams are on AWS now; video was the holdout for a while because they needed specialized GPUs. 
EDIT: &amp;quot;This isn&amp;#x27;t quite right; it has more to do with the tight coupling of the video system with the network (eg, all the peering stuff described in the article)&amp;quot; -spenczar5&lt;p&gt;- Realtime transcoding is a &lt;i&gt;really&lt;/i&gt; interesting architecture nowadays (I am not qualified to explain it)&lt;p&gt;Web:&lt;p&gt;- No more Ruby on Rails because no good way was found to scale it organizationally; almost everything is now Go microservices back + React front&lt;p&gt;- No more Twice&lt;p&gt;- Data layer was split up to per-team; some use PostgreSQL, some DynamoDB, etc.&lt;p&gt;- Of course many more than 2 software teams now :P&lt;p&gt;- Chat went through a major scaling overhaul during&amp;#x2F;after Twitch Plays Pokemon. John Rizzo has a great talk about it here: &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;www.twitch.tv&amp;#x2F;videos&amp;#x2F;92636123?t=03h13m46s&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;www.twitch.tv&amp;#x2F;videos&amp;#x2F;92636123?t=03h13m46s&lt;/a&gt;&lt;p&gt;Twitch was a great place to spend 5 years at. Would do again.</text></comment>
<story><title>Justin.tv&apos;s Live Video Broadcasting Architecture (2010)</title><url>http://highscalability.com/blog/2010/3/16/justintvs-live-video-broadcasting-architecture.html</url></story><parent_chain></parent_chain><comment><author>aerovistae</author><text>I can barely follow along with this, it&amp;#x27;s very technical. I can&amp;#x27;t imagine how Kyle Vogt acquired the necessary knowledge to make this work. Example:&lt;p&gt;&amp;gt; The point of having multiple datacenters is not for redundancy, it&amp;#x27;s to be as close as possible to all the major peering exchanges. They picked the best locations in the country so they would have access to the largest number of peers.&lt;p&gt;This is the kind of thing where I would have to hire some kind of network engineering expert, and he just &lt;i&gt;figured this stuff out&lt;/i&gt; and made it work? I can&amp;#x27;t fathom other people&amp;#x27;s intelligence sometime.</text></comment>