我们的Web应用程序有5个页面(登录,仪表板,地图,设备,通知)
我们已经为此应用程序完成了负载测试,并且负载测试脚本执行以下操作:
我们在AWS中有一个基本的免费计划。
在进行负载测试时,直到大约100位用户,我们都没有收到任何错误。请参见下图。我们可以看到NetworkIn,CPUUtilization似乎很正常。但是NetworkOut显示为846K。
但是,当达到约114个用户时,我们开始在地图页面中出现错误(红色突出显示)。在这段时间里,似乎只有NetworkOut很高。请参见下图。
我们想知道NetworkOut的最佳分数是多少,如果这个数字很高,有什么办法可以减少这个数字?
如果您需要更多信息,请告诉我。预先感谢您的帮助。
答案 0 :(得分:1)
您正在使用t2.micro
实例。
此实例类型在CPU上有限制,这意味着它适合突发工作负载,但持续负载将消耗所有可用的CPU信用。因此,在长期的持续负载下,它的性能可能会很差。
实例还具有有限的网络带宽,这可能会影响服务器的吞吐量。尽管所有Amazon EC2实例的带宽分配都很有限,但是t2.micro
和t2.nano
的带宽分配特别低。在将数据复制到实例或从实例复制数据时,您会看到此消息,并且可能会在测试过程中影响您的工作负载。
t2
系列(尤其是低端产品)对于生产工作负载不是一个很好的选择。对于有时很高但并非一直很高的工作负载而言,这非常有用。它的成本也特别低,但是请意识到,要想获得如此低的成本,就需要权衡取舍。
请参阅:
也就是说,图中显示的网络吞吐量是您的应用程序的结果。尽管t2
可能会限制吞吐量,但它并不负责图形上的峰值。为此,您将需要调查应用程序本身正在使用的资源。
答案 1 :(得分:0)
NetworkOut
仅指实例的传出流量。您可以减少从该实例发送的请求以减少NetworkOut
。因此,您可能需要查看click Map, Click Devices and Click Notification
中的哪一个正在向实例外部发送流量。它不一定与用户数量有关,而与用户数量和应用程序模块的组合有关。