服务导航
企业概况     李墨菲博客
百度推广、谷歌推广、SEO优化
域名注册、服务器 VPS租用
网站服务流程    业务渠道代理
网站建设价格表
搜索引擎竞价排名服务
800元企业网站制作特价套餐
搜索引擎免费登录口
咨询QQ:2196677
售后QQ:82090889
为什么要选择八桂网讯?
8年品牌网站建设经验积累,网站成功客户超2200家!
在为您提供服务的任何一个环节,我们都拥有自己的核心团队,保障售后服务的可控性。
由程序编程师、平面美工设计师形成的专业后盾组合,从asp、asp.net、php到java的知识结构互补,使得八桂网讯能够满足客户的功能需求和二次开发整合。
全面的成熟团队为能为您提供一流的平面设计和网站管理后台。
当前位置:网站首页 新闻资讯八桂网讯:“杀死”你的服务器的6种方法(2)
八桂网讯:“杀死”你的服务器的6种方法(2)
编辑:八桂网讯    时间:2010/8/28    浏览:1997

我们需要一个计划来减少负载,然后,我们和我们的托管服务提供商讨论了这个问题。他们的一个系统管理员提出了一个好主意:“伙计,你的服务器现在运行在一个非常常见的Apache+mod_php架构上。把你的Web服务器换成Lighttpd怎么样?它是一个相当小项目,但是维基百科都在使用它。”我们同意了。(相关文章推荐:更好的选择 细数Apache服务器的四个替代者)

“杀死”你的服务器的方法之二

把一个开箱即用的Web服务器架设在你的机器上,并且一点也没有对它进行优化,那么你的服务器将会挂掉!那个管理员尽了他的最大努力,尽快地重新配置了所有的Web服务器。他抛弃了Apache,然后切换到Lighttpd+FastCGI+Xcache上来。后来,当我们重新上线的时候,我们几乎没有再感受到压力。这次,这些服务器会维持多长时间呢?

这些服务器运行的出奇地好。负载比以前低很多,平均响应时间也不错。我们彻底放心了,然后我们都回家睡觉了。天已经很晚了,我们认为没有其他的事情需要我们做了。第二天,网站运行的相当好,但是在高峰时段,它一直接近于崩溃的边缘。我们发现MySQL是瓶颈,我们再次打电话给我们的托管服务提供商。他们建议在每个Web服务器上用MySQL从服务器进行MySQL的主-从同步。

“杀死”你的服务器的方法之三

再强大的数据库服务器也有它的极限,当你到达它的极限的时候,你的服务器将会挂掉!在这种情况下,某些时候你的数据库会变得十分缓慢,以至于队列中大量的网络连接会再次“杀死”我们的Web服务器。不幸的是这个问题很难修复。内容管理系统在这方面十分的简单,它本身并不支持单独地读取和写入SQL查询。重写这一切花了很长时间,但是相对于每分钟都遭遇到挂起休眠来说,是相当值得的。

MySQL同步真的成功了,网站最终稳定了!在接下来的几周,几个月里,网站取得了成功,用户的数量开始不断地增加。流量再次超过我们的资源限制,这只是时间的问题。

“杀死”你的服务器的方法之四

不提前作规划,你的服务器可能会挂掉!

幸运的是,我们一直在思考,并且一直在做规划。我们优化了代码,减少了每个页面载入的时候需要的SQL查询的数量,我们意外地发现了MemCached这个好东东。首先,我们在一些核心功能上添加了对MemCached的支持,在一些重量级(运行缓慢)的功能上我们也添加了对MemCached的支持。当我们把这些变更部署以后,我们简直不能相信这个结果——这感觉有点像发现了“圣杯”。我们每秒查询的数量至少降低了50%。我们决定更多地使用MemCached,而不是购买另外一个Web服务器。

“杀死”你的服务器的方法之五

忘记做缓存,你会浪费很多钱,而且,你的服务器还会挂掉!事实证明,MemCached帮助我们减少了70%-80%的MySQL服务器上负载,同时,在Web服务器上,也产生了巨大的性能提升。页面载入的相当快。

最终,我们的配置看起来似乎是完美的。即使在高峰时段,我们也无须再担心崩溃或页面响应缓慢了。我们搞定它了吗?不!一台蓝色的Web服务器开始有一点响应缓慢了。然后出现了一些错误消息,空白页面等等。这个系统负载能力很不错,在大多数情况下服务器也都在工作,但是只是在“大多数情况下”而已。

“杀死”你的服务器的方法之六

把成百上千个小文件放在一个文件夹里,当索引节点耗尽的时候,你的服务器将会挂掉!

是的,你没有看错。我们过去只是关注MySQL,PHP和Web服务器本身,并没有太关注文件系统。Smarty缓存文件存储在本地文件系统里——所有的缓存文件都存储在同一个目录下。解决方案是把Smarty放在一个专用的ReiserFS分区里。另外,我们还打开了Smarty的“use_subdirs”选项。

在过去的几年里,我们一直在优化页面。我们把Smarty缓存放到了memcached中。为了更快速地处理静态文件,我们安装了Varnish来减少I/O负载。我们还切换到了Nginx(Lighttpd会随机的产生error 500的消息),安装了更多的内存,购买了更好的硬件,更多的硬件.....这个列表永远不会结束。

总结

扩展一个网站是一个永远不会结束的过程。当你解决了一个瓶颈以后,很可能马上会遇到下一个瓶颈。永远都不要这样想:“就是这样,我们大功告成了”然后就靠边站了。这会“杀死”你的服务器,甚至是你的业务。规划和学习是一个持续的过程。如果你因为缺乏经验或资源而不能自己完成这个工作,那么可以找一个有能力胜任这个工作,而且很可靠的合作伙伴,和它一起来做这个工作。永远都不要停止和你的团队和合作伙伴沟通当前遇到的一些问题和即将会遇到的一些问题。思考在前才能争取主动。

原文:http://networking.ctocio.com.cn/386/11504386.shtml

八桂网讯 爱伦文化 深圳外语培训 招商加盟 迪优目录 广西旅游365 八桂大地 建站导航网 南宁创意雕塑 双成纸管
八桂网讯-高端网站建设专家
Copyright © 2004- 八桂网讯网络技术有限公司 Baguidadi Inc. All Rights Reserved.