- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
大型并发系统整理
Facebook是以PHP开发,GeekSeesions分享过Lucas Nealan的文档。
在该平台的开发中,选用PHP可能很多人感觉不可思议,而实际上对于大型系统来说,“Languagess dont Scale, Architecture Scale”,这话是Cal Henderson 提到的。
在像这种大型系统中,Cache是一个最主要的也是最关键的因素。而换句话说,任何一个成功的大型站点其Cache策略都是必备的。
上图我们可以看到三个关键地方:
Meccached
APC
Third Party CDN
都是重点体现Cache策略的。
PHP页面的载入时间优化是一个比较重要的地方,Facebook采用了APC.
Memcached 层
APC Cache 的是非用户相关的信息,而用户相关的数据 Cache 当然是在 Memcached 中。
Facebook 部署了超过 400 台 Memcached 服务器,超过 5TB 的数据在 Memcached 中。这是当前世界上最大的 Memcached 集群了。也给 Memcached 贡献了不少代码,包括 UDP 的支持和性能上的提升(性能提升超过 20%)。
程序 Profiling
Facebook 开发人员大量采用 Callgrind 、APD、 xdebug 、KCachegrind 等工具进行基准性能测试。任何一个 Web 项目,这也是不可或缺,也是比较容易忽略的一环。所有开发人员都应该具备熟练使用这些工具的能力才好。
本文评论有一部分比较有价值
我怎么记得facebook是ruby开发的??
/friends-sale-architecture-300-millionview-month-facebook-ror-app
#The Platform
# Ruby on Rails# CentOS 5 (64 bit)# Capistrano - update and restart application servers.# Memcached# MySQL# Nginx# Starling - distributed queue server# Softlayer - hosting service# Pingdom - for website monitoring# LVM - logical volume manager# Dr. Nics Magic Multi-Connections Gem - split database reads and writes to servers
该评论让我们注意到大型平台的架构中考虑的几个因素:
CentOS + Memcached + Mysql + Nginx
搜索一份叫做 apc@facebook 的 PDF 文档很可惜国内的很多应用在处于争论到底JAVA,RUBY,还是PHP,ASP.NET哪种好的程度上只是我没想到他们还在用APC似乎APC已经停滞开发很久了.如果是400台的memcached.我比较关心他们怎么处理memcached非持久性数据保存的问题因为万一其中一台挂了.所有cached的数据就要从头再去DB里面读取.这样性能会一下子下降很多./arch/facebook_php.html
大型网站的操作系统以及服务选择:
可以在 /up/graph?site=这里查询到。
以下数据从DBA notes摘录
一时好奇,看看这些大网站的 Web 服务器信息(操作系统/Web 服务器/应用服务器软件).
Google 用哪些软件做 Web Server?除了有两个节点操作系统看出来是 Linux 外,其他的都是未知的. Web 服务器用的都是 GWS ? 我估计是 Google Web Server 的缩写.
Yahoo!操作系统都是 FreeBSD. 其他的都不可知.Yahoo! 的网络安全据说是一级棒!
微软操作系统全是 Windows 2003(如果使用 Linux 会被笑死) , 看来 Windows 2000 已经退出微软自己的舞台.Web 服务器用的是Microsoft-IIS/6.0.
eBay操作系统用:Windows Server 2003 /2000, Web服务器用 Microsoft-IIS/6.0 (5.0). 对这个检测有些怀疑.eBay 大规模使用 Windows ?
GNU.org操作系统全是 Debian Linux(没错,Debian 是 GNU 正宗传人). Web 服务器: Apache/1.3.31 (Debian GNU/Linux) mod_python/2.7.10 Python/2.3.4
您可能关注的文档
- 四年级共24个实验.docx
- 四2有利于生存本领.ppt
- 四年级上册语文第六课爬山虎脚.doc
- 四年级数学大数读写.ppt
- 四年级的环境的的教案.doc
- 四年级期中检测卷最新doc.doc
- 四年级语文上册第二单元备课初备-.doc
- 四年级上册第二单元的的教案.doc
- 四年级阅读的资料.doc
- 四年级课本.doc
- 《绿色建筑自然通风与采光设计在提升建筑室内空气质量中的应用研究》教学研究课题报告.docx
- 《金融市场系统性风险预警指标体系构建与金融风险防范策略研究》教学研究课题报告.docx
- COPD 护理教学查房.docx
- 高中生物实验AI辅助教学学习分析可视化策略分析教学研究课题报告.docx
- 江岸区国四道路施工方案.docx
- 江岸区市政排水管施工方案.docx
- 《面向儿童教育应用的基于手势识别的交互界面设计研究》教学研究课题报告.docx
- 《汽车零部件制造企业精益六西格玛管理体系优化与创新实践研究》教学研究课题报告.docx
- 《边缘计算在智能交通系统中的大数据挖掘与应用》教学研究课题报告.docx
- 《海洋牧场建设与海洋生物栖息地恢复的生态响应研究》教学研究课题报告.docx
文档评论(0)