2

我希望在我的站点上进行性能测试,模拟成千上万的用户并找到每台服务器的容量限制。我使用的工具是 jmeter,我为测试场景准备了一个 .jmx。但是当我尝试同时模拟 1000 个用户时,我开始得到:

<httpSample t="0" lt="0" ts="1338538936990" s="false" lb="VerifyPassword" rc="Non HTTP response code: java.net.SocketException" rm="Non HTTP response message: Too many open files" tn="LoadConfig 1-901" dt="text" by="1375"/>

我认为错误出在客户端,因为套接字连接太多。如果是这样,我如何从我的本地机器模拟这种情况?我可以增加 linux 上打开的套接字的数量吗?

我发现从单个客户端进行测试的另一件事可能会在客户端成为瓶颈并且服务器工作正常的情况下发出错误警报。如何进行性能测试,以便模拟真实生活场景,让我有 10K+ 用户,每个用户都有自己的 CPU/RAM,然后进行性能测试?

4

1 回答 1

4

我已经从 .NET 运行了 JMeter,但我认为你的情况也是如此。

您不能增加套接字的数量。你应该做一个分布式负载测试。幸运的是,Jmeter 有这个能力:)

您应该查找的谷歌术语是分布式 JMeter 测试或远程 JMeter 测试。如果碰巧你只能使用本地机器,你可能会使用虚拟机来创建几个 JMeter 分布式实例......

检查:http: //jmeter.apache.org/usermanual/remote-test.html

于 2012-06-01T08:46:57.513 回答