首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何配置服务器以处理大流量?

如何配置服务器以处理大流量?
EN

Server Fault用户
提问于 2011-08-11 18:38:07
回答 2查看 2.5K关注 0票数 1

现在我有1000个在线并发用户。但是我的网站很慢。我可以拥有8000名并发用户,但是服务器无法处理流量,而且我正在失去访问者。

我的服务器是VPS服务器:

专用CPU 7.2GHz

RAM 4512 RAM

内存使用率远远低于可用资源。(现在是632 MB)我该怎么办?我应该配置apache服务器吗?如果是,怎么做?缓存呢,也许是memcached?

这是一个虚拟服务器,由节点构建,每个节点代表600 Mhz cpu和376 is内存。

我正在运行一个由php和mysql构建的网站。

EN

回答 2

Server Fault用户

发布于 2011-08-11 20:31:02

基准。这是唯一的解决办法。有无数的东西可以让一个网站变慢。我会这样做:

  • 用Firebug加载Firefox。检查网络面板中的主请求的加载时间。如果它为“连接”提供了很长的时间,您可能会遇到网络或带宽问题,或者Apache无法同时处理这么多请求。如果有很长的“等待”或“传输”时间,那么PHP脚本可能是罪魁祸首。他们花了太多的时间来渲染这一页。
  • 在处理PHP时,第一个可疑点通常是您的(我的)SQL服务器。如果使用中央SQL库,则应该不难对查询进行基准测试。只需跟踪您的页面需要多少查询,以及这些查询需要多长时间。将其与整个页面呈现时间进行比较。如果你有一个旧的应用程序,使用普通的mysql(i)_函数到处都是,然后跳下两个牛头。
  • 如果问题与MySQL有关,那么第一个疑点通常是适当的索引。对所有查询运行解释,并查看是否使用了索引。定义适当的索引。再来个基准。I/O也是MySQL减速的一个常见原因(使用更大的查询缓存、发出更少的查询(应用程序缓存)、调整MySQL设置或只分割webserver和server。
  • 如果问题是PHP本身,请加载xdebug并通过分析器运行您的页面(确保只针对您的请求,否则您可能很容易关闭服务器)。在KCacheGrind中加载转储,并找出应用程序花费所有时间的地方。重构。

这正是我会做的。每一步都在很大程度上取决于你在前一步中得到的结果。没有我们能给你的一般性建议。只需基准、基准、基准和重构您的代码和服务器设置相应。

票数 3
EN

Server Fault用户

发布于 2011-08-12 17:15:04

我的网站开始到了性能受到一点影响的地步。我把memcached放在了一些“复杂”的页面上,效果比我想象的要好。我有几个页面花了.5秒来解析,还有一个页面花了3秒的时间来解析(我知道,这对我来说是可耻的)。我花了不到一个小时将memcached放在其中几个关键位置,现在所有的东西都在不到.01秒的时间内解析。而且,我也注意到我的负载平均值也下降了很多,因为没有那么多mysql查询需要处理。我不能推荐memcached更多:)

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/331458

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档