我们如何在Ruby Web应用程序中进行性能测试?

时间:2020-03-06 14:19:24  来源:igfitidea点击:

我一直在研究人们测试其应用程序的方式,以便确定在哪里进行缓存或者进行一些额外的工程工作,到目前为止,httperf和一个简单的sesslog都非常有用。

我们在项目中应用了哪些工具和技巧?

解决方案

我使用httperf以获得更高的性能视图。

Rails内置了一个性能脚本,该脚本使用ruby-prof gem来分析Rails堆栈内部的调用。使用此技术,在请求分析方面有出色的Railscast。

NewRelic有一些非常酷的分析工具,可提供近乎实时的数据。
他们只是免费提供了"精简版"版本。

我使用jmeter进行基于会话的测试,它可以非常精细地控制我们要访问的页面,要注入的参数,要通过的循环等。它非常适合模拟网站可以处理多少个实际用户,而不仅仅是性能测试一组静态网址。通过将jmeter-server加载到具有公共可访问IP的计算机上,可以非常轻松地在多台计算机上分发测试。我发现任何一台计算机一次可以扔到服务器上的用户/线程数量有一些限制(取决于测试),但是jmeter帮助我的团队将用户的应用程序容量提高了6倍。

它没有任何花哨的图形显示-我实际上使用自己的内部图形显示,可以根据请求时间对某些页面和操作进行性能分析。

我正在评估一个名为Jiffy的新的开源网页工具和测量套件。它不是特别适用于ruby,它适用于所有类型的webapp

还有一个Jiffy Firebug扩展程序,用于在浏览器中呈现指标。

我的一位同事也对此发表了一些有趣的想法。

我还建议我们查看Browser Mob进行负载测试。