因为我知道对此没有真正的答案,所以不详细介绍规格。但是我今天一直在使用ab
apache 中的命令进行负载测试。
并达到每秒 70 个请求的数量(1000 个请求和 100 个并发用户),在从 4 个不同的数据库表加载的页面上,并对数据进行一些操作。所以这是一个相当沉重的页面。
该服务器暂时不用于其他任何用途,它的负载只有我,因为它正在开发中。但是该应用程序每天都会被许多用户使用。
但这足够了吗?或者我什至应该担心(只要它超过 X 请求一秒钟)
我想我不应该担心,但我想要一些提示。
因为我知道对此没有真正的答案,所以不详细介绍规格。但是我今天一直在使用ab
apache 中的命令进行负载测试。
并达到每秒 70 个请求的数量(1000 个请求和 100 个并发用户),在从 4 个不同的数据库表加载的页面上,并对数据进行一些操作。所以这是一个相当沉重的页面。
该服务器暂时不用于其他任何用途,它的负载只有我,因为它正在开发中。但是该应用程序每天都会被许多用户使用。
但这足够了吗?或者我什至应该担心(只要它超过 X 请求一秒钟)
我想我不应该担心,但我想要一些提示。
每秒 70 个请求相当于每小时 252,000 个页面呈现/小时。
如果您假设您网站的平均浏览会话深度为 10 页,那么您可以支持 25,000 个唯一身份/小时。
您可能应该根据您的预期访客人数检查这些数字,这应该可以从业务方面的人那里获得。
我工作的许多网站在每天大约 3 小时的高峰期看到了大约 50% 的每日流量。如果您的网站是这种情况(这取决于您提供的内容类型和受众),那么您应该能够支持大约 150,000 次的每日唯一访问次数。
这些是相当不错的数字。我觉得你应该没问题。现在研究操作码缓存和数据库调优是明智的,但请记住——过早的优化是万恶之源。监控站点、寻找热点并等待流量增长,然后再针对您可能没有的问题进行昂贵的优化工作。
过去,我使用 2 个工具来观察我的 apache 服务器的性能。
一个是munin,它绘制了各种各样的东西,包括 apache 实例的数量、连接数量、可用内存、处理器使用情况等 - 并帮助我确定何时接近危险区域以及原因。
第二个是简单的apache 服务器状态页面( http://your_server/server-status?refresh=10 ),它让我可以看到每个连接的状态,以及在任何给定时刻有多少可用连接。
我建议您仅在您认为您的应用程序在落地时会非常繁忙时才担心。有问题的页面可能会受到那么严重的打击吗?更难?较少的?如果您不知道,我会怀疑这不太可能是早期的问题。如果它是您最慢的页面,如果您以后必须优化系统,您将知道一个地方可以查看。
您还可以做很多事情来调整大多数 Web 服务器和数据库引擎以挤出更多性能。
您在评论中声明您的服务器每秒可以在一个空白页面上处理 2,900 个请求。这非常强烈地表明它不是网络服务器本身 - 它是处理。
如果您使用的是 PHP,请考虑使用类似APC的操作码缓存器。如果数据库是瓶颈,memcached也会帮助您。
一旦您将您的网站上线,您还可以查看 mod_top 1,它可以让您实时查看 Apache 上的当前负载。我自己没有安装它,但它似乎比标准的 Apache 服务器状态具有更多的信息和更好的负载分解。