There is an interesting post on the
highscalability blog about the architecture of justin.tv.
Here's an overview of their stack:
Twice - custom web caching system. (
http://code.google.com/p/twicecache/)
XFS - file system.
HAProxy - software load balancing.
The LVS stack and ldirectord - high availability.
Ruby on Rails - application server
Nginx - web server.
PostgreSQL - database used for user and other meta data.
MongoDB - used for their internal analytics tools.
MemcachedDB - used for handling high write data like view counters.
Syslog-ng - logging service.
RabitMQ - used for job system.
Puppet - used to build servers.
Git - used for source code control.
Wowza - Flash/H.264 video server, plus lots of custome modules written in Java.
Usher - custom business logic server for playing video streams.
S3 - small image storage.