如何模拟本地计算机上的负载/流量

时间:2015-06-23 15:48:07

标签: ruby-on-rails heroku load-testing

我有一个应用程序,用于检查文本消息的状态并重新发送,如果失败,但每次在Heroku上重新启动后,它运行良好大约15分钟,然后崩溃时出现以下错误: ActiveRecord::ConnectionTimeoutError (could not obtain a database connection within 5.000 seconds (waited 5.000 seconds)):

我怀疑这是由应用程序端点的大量命中引起的。

我正在尝试在我的计算机上本地重现此错误,因此在我知道它是否有效之前,我不需要每次都进行更改。

有人能指出我正确的方向吗?

我正在考虑使用Google搜索stress testingload testing

之类的内容

仅供参考:我正在使用rspec进行测试

2 个答案:

答案 0 :(得分:1)

我不知道你是否已经浏览过它,但是Rails文档在性能测试方面有很好的指导: http://guides.rubyonrails.org/v3.2.13/performance_testing.html

如果您想多次点击ActiveRecord查询,则基准测试器部分可能特别有用: http://guides.rubyonrails.org/v3.2.13/performance_testing.html#benchmarker

答案 1 :(得分:0)

您可以使用一些负载测试工具,它可以在控制台上运行,在localhost上测试您的应用程序:

https://github.com/tsenart/vegeta

https://github.com/lubia/sniper