opportunity__cost

http://live.prokhorenko.us
Mar 17 2010

Justin.tv's Broadcasting Architecture

Platform

  1. Twice - custom web caching system. (http://code.google.com/p/twicecache/)
  2. XFS - file system.
  3. HAProxy - software load balancing.
  4. The LVS stack and ldirectord - high availability.
  5. Ruby on Rails - application server
  6. Nginx - web server.
  7. PostgreSQL - database used for user and other meta data.
  8. MongoDB - used for their internal analytics tools.
  9. MemcachedDB - used for handling high write data like view counters.
  10. Syslog-ng - logging service.
  11. RabitMQ - used for job system.
  12. Puppet - used to build servers.
  13. Git - used for source code control.
  14. Wowza - Flash/H.264 video server, plus lots of custome modules written in Java.
  15. Usher - custom business logic server for playing video streams.
  16. S3 - small image storage.

The Stats

  1. 4 datacenters spread through out the country.
  2. At any given time there's close to 2,000 incoming streams.
  3. 30 hours per minute of video is added each day.
  4. 30 million unique visitors a month.
  5. Average live bandwidth is about 45 gigabits per second. Daily peak bandwidth at about 110 Gbps. Largest spike has been 500 Gbps.
  6. Approximately 200 video servers, based on commodity hardware, each capable of sending 1Gbps of video. Smaller than most CDNs yet larger than most video websites.
  7. About 100TB of archival storage is saved per week.
  8. The complete video path can't have more than 250 msecs of latency before viewers start losing the ability to converse and interact in real-time.

Well, I didn't use Justin.tv myself, so I can't tell you how well does this work; however, it looks like they took all the simple bits and pieces and built a decent platform from them.

In addition to this blog, I also run a Startup Product newsletter.

To subscribe, enter your email address:      

Delivered by TinyLetter

Oct 26 2009

Scalability at Facebook

Facebook has grown into one of the largest sites on the Internet today serving over 200 billion pages per month. The nature of social data makes engineering a site for this level of scale a particularly challenging proposition. In this presentation, I will discuss the aspects of social data that present challenges for scalability and will describe the the core architectural components and design principles that Facebook has used to address these challenges. In addition, I will discuss emerging technologies that offer new opportunities for building cost-effective high performance web architectures.

Jeff Rothschild (VP of Technology at Facebook) talks about scalability at Facebook. Jeff has a long history in IT and was founder of Veritas. Click on "click here for webcast" to see the recorded video from the lecture.

In addition to this blog, I also run a Startup Product newsletter.

To subscribe, enter your email address:      

Delivered by TinyLetter

About Olexandr Prokhorenko

My name is Olexandr Prokhorenko. I am passionate about building products that users *love*.

My LinkedIn profile is www.linkedin.com/in/white.


TwitterFacebookLinkedInFriendfeedPicasaFlickrYoutubeVimeoDeliciousLivejournalBloggerScribd

Search Blog

@iwhite   

Tags