大型Web应用Twitter架构图(cache篇)

根据网上公开资料整理的Twitter架构,主要是cache方面,加了作者自己的补充,跟实际的架构未必完全一致。
大型Web应用Twitter架构图(cache篇)_第1张图片

一些数据:

  • Cache分Page cache, fragment cache, row cache, vector Cache, cache命中率见图。
  • Fragment cache存放了API各种请求格式的数据,包括XML, JSON, RSS, ATOM。
  • 发表Tweets是先放入Kestrel, 再异步处理,Kestrel用的也是memcached协议。
  • API requests: 550 r/s。
  • POST tweets: 峰值:平时 80tweets/s, 奥巴马就任时达到 350tweets/s。
  • Aggregator模块需要访问memcached multi get 数百个/s。
  • Ruby on Rails前面还用了Varnish作前端反向代理。

参考资料:

  • QCon London 2009: Upgrading Twitter without service disruptions
  • Improving Running Components at Twitter (PDF slide)

你可能感兴趣的:(大型Web应用Twitter架构图(cache篇))