Web应用程序的平均并发和峰值并发用户数

时间:2011-12-21 10:34:50

标签: ruby-on-rails ruby-on-rails-3 web-services web-applications concurrency

我在Mongrel服务器上启动并运行了RoR 2.1 Web应用程序,现在我想计算Web应用程序的平均并发用户数和峰值并发用户数。

是否有明确的方法来解决这个问题,或者我应该使用什么分析来计算这个?

我的应用程序的后端是MySQL,我尝试在Mysql Status中查找Threads_connectedThreads_created的值。此值返回当前打开的连接数以及为处理连接而创建的线程数。

这些值是否直接暗示当前连接的用户数量?如果没有,请建议计算这些值的方法。

2 个答案:

答案 0 :(得分:1)

MySQL统计数据反映了连接到数据库的进程数量,所以如果你有10个混蛋,你可能会看到10个(加上你连接到db的任何进程(脚本,守护进程,控制台会话等)) 。这不会改变是否有100个用户使用该站点或没有(除非你有一些扩展进程数的东西)

就用户数量而言,谷歌分析可以很好地了解这类事情或分析您自己的日志文件,具体取决于您所需的复杂程度。

如果最终目标是找出您需要的服务器资源,那么像newrelic或union central这样的服务是很好的。

答案 1 :(得分:0)

你只能拥有与mongrel进程一样多的并发用户,因为除非你在配置应用程序时调用 threadsafe ,否则Rails是单线程的(但除非你真的理解其含义,否则你不应该这样做这样做。)

相关问题