我有一个应用程序,用于检查文本消息的状态并重新发送,如果失败,但每次在Heroku上重新启动后,它运行良好大约15分钟,然后崩溃时出现以下错误:
ActiveRecord::ConnectionTimeoutError (could not obtain a database connection within 5.000 seconds (waited 5.000 seconds)):
我怀疑这是由应用程序端点的大量命中引起的。
我正在尝试在我的计算机上本地重现此错误,因此在我知道它是否有效之前,我不需要每次都进行更改。
有人能指出我正确的方向吗?
我正在考虑使用Google搜索stress testing
或load testing
仅供参考:我正在使用rspec
进行测试
答案 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上测试您的应用程序: