从架构图中学习大型网站的设计经验
1、WikiPedia 技术架构
-
来自wikipedia的数据:峰值每秒钟3万个 HTTP 请求 每秒钟 3Gbit流量, 近乎375MB 350 台PC 服务器。
-
GeoDNSA :40-line patch for BIND to add geographical filters support to the existent views in BIND", 把用户带到最近的服务器。GeoDNS 在 WikiPedia 架构中担当重任当然是由 WikiPedia 的内容性质决定的--面向各个国家,各个地域。
2、Facebook 架构
3、Yahoo! Mail 架构
Yahoo! Mail架构部署了Oracle RAC,用来存储Mail服务相关Meta数据。
4、twitter技术架构
缓存在大型web项目中超致力了举足轻重的作用,毕竟数据越靠近CPU存取速度越快。
5、Google App Engine技术架构
简单而言,上述GAE的架构分为如图所示的三个部分:前端,Datastore和服务群。
- 前端包括4个模块:Front End,Static Files,App Server,App Master。
-
Datastore是基于BigTable技术的分布式数据库,虽然其也可以被理解成为一个服务,但是由于其是整个App Engine唯一存储持久化数据的地方,所以其是App Engine中一个非常核心的模块。
-
整个服务群包括很多服务供App Server调用,比如Memcache,图形,用户,URL抓取和任务队列等。
6、Amazon技术架构
Dynamo是亚马逊的key-value模式的存储平台,可用性和扩展性都很好,性能也不错:读写访问中99.9%的响应时间都在300ms内。按分布式系统常用的哈希算法切分数据,分放在不同的node上。Read操作时,也是根据key的哈希值寻找对应的node。Dynamo使用了 Consistent Hashing算法,node对应的不再是一个确定的hash值,而是一个hash值范围,key的hash值落在这个范围内,则顺时针沿ring找,碰到的第一个node即为所需。
最后欢迎大家访问我的个人网站:1024s