根据网上公开资料整理的Twitter架构,主要是cache方面,加了作者自己的补充,跟实际的架构未必完全一致。
一些数据:
- 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作前端反向代理。
参考资料:
本文详细探讨了Twitter架构中Cache组件的核心作用,包括Pagecache, fragmentcache,rowcache,vectorCache等,并通过实例展示了如何高效管理这些缓存以提升性能。文中还提到了API请求处理速度、发布推文峰值以及聚合器模块对memcached的高频率访问等关键信息。
5400

被折叠的 条评论
为什么被折叠?



