我目前正在研究一些Ajax沉重的代码,我想知道我的服务器如何随着越来越多的用户(希望)开始使用我的web应用程序而进行扩展。现在只在我的内部测试服务器上,我想知道如何去模拟几百或几千个用户,以便我可以看到它如何处理更重的负载。它是用PHP/MySQL编写的,我真的不想找到成百上千台手动设置和测试的计算机。:)在此先感谢,任何建议或方向都非常感谢。测试代码规模如何
Q
测试代码规模如何
5
A
回答
11
Apache基准测试。它随Apache Web Server一起提供。有点是这样的:对于100项的要求使用10个并发线程,使用这个命令:
ab -n 100 -c 10 http://localhost/
与您的AJAX代码将调用一个网址替换本地主机URL。输出会给你一个很好的报告,说明如何处理请求。一些有趣的数字是:
Complete requests
Failed requests
Requests per second
0
我做了什么,它会给一个非常粗略的想法,是编写一个可以创造几十或几百个线程的应用程序,并随机点击服务器几十个每个倍,拥有独特的用户。因此,我有100个独特的测试用户,并且我会创建100个线程,随机继续以随机间隔进行一些操作。
这会告诉你是否有一些规模问题。
然而,最终你会遇到问题,因为你只有一个网络连接,所以会扼杀速度,所以它不是完美的。
您也可以使用junitperf来解决这个问题,因为您可以查看每个测试是否花了很长时间来做出回应。
最好的办法是进行这些测试,将它们放在尽可能多的机器上,并且一次运行它们,让10台计算机假装成10或100人比有一台计算机更有效成为这些人中的每一个人。
你不想让网络服务器和测试在同一台计算机上,否则会严重混淆结果,因为网络服务器只会获得一些cpu周期。
0
鉴于此问题,我会记录用户会话。然后编写客户端代码,再现该组调用。
另一种选择是使用VMware。 (请注意,我是一名员工)只需创建一堆虚拟机并连接到每个虚拟机。仍然意味着大量的手动工作,但至少你不需要尽可能多的机器来完成测试。
0
我建议LoadUI http://www.loadui.org/
相关问题
- 1. 如何测试的代码
- 2. 如何测试此代码
- 3. 如何测试build.sbt代码?
- 4. 如何测试java代码?
- 5. 如何测试Grails的规模约束
- 6. 如何调试要测试的代码
- 7. 测试代码
- 8. 大规模分配测试
- 9. Boost测试:如何调试测试代码?
- 10. 如何编写需要重复测试代码的代码测试?
- 11. 你如何测试非功能代码?
- 12. 如何测试大型复杂代码?
- 13. 如何测试涉及SynchronizationContext的代码?
- 14. 如何有效测试此代码?
- 15. 如何组织和测试此代码?
- 16. Java - 如何测试一些代码?
- 17. 你如何测试Java EE代码?
- 18. 如何单元测试CodeIgniter代码
- 19. 如何测试代码生成工具?
- 20. 如何使用RSpec测试此代码?
- 21. 测试theano代码,如何使用GPU?
- 22. 如何运行我的代码测试
- 23. 如何在Eclipse中测试java代码?
- 24. 我如何测试代码覆盖率?
- 25. 如何测试异步代码
- 26. 你如何测试CocoaPod代码?
- 27. 如何用angulardart测试异步代码
- 28. 如何测试我的Python代码?
- 29. 如何在RSpec中测试此代码?
- 30. 我该如何测试这段代码?
在同样的'ab',有崇 - http://tsung.erlang-projects.org/我一直在使用,这是一个极好的工具。 – inerte 2009-09-05 05:53:36