Meta

Facebook Chat

May 14, 2008Eugene Letuchy
Facebook Chat
SummaryAI, from the source post

This post details the engineering challenges and solutions for building Facebook Chat, focusing on real-time presence notification and messaging. It highlights the inefficiency of naive presence updates and introduces XHR long polling (a variation of Comet/BOSH) for real-time messaging. The post also discusses distribution, isolation, and failover strategies, including the use of C++ for logging and Erlang for an epoll-driven web server to handle in-memory conversations and long-polled requests. Thrift is presented as the glue for cross-language communication between PHP, JavaScript, Erlang, and C++.

More from the Facebook Chat trail