我已经在WebServices(WSDL)和Gateway接口上对WSO2 APIM执行了一些性能测试。网关上的一切都很顺利,但是当我使用Web服务时,我面临一种奇怪的行为。
基本上我创建了一个添加,更改密码和删除用户并使用64个线程运行测试计划的测试。在非常小的时候,我的吞吐量增加很多,直到达到所有64个线程(吞吐量峰值为1600 req / seg)。然而,在此之后,吞吐量开始无缘无故地减少。
所有64个线程仍处于活动状态且正在运行,托管wso2am的计算机会降低CPU使用率。似乎APIM放弃了处理请求,即使它有线程和处理器。
下图显示了处理器(用户,系统和空闲)的vmstat结果以及上下文切换和中断。 cpu / context switch可以跟随吞吐量。
接下来的图片说明了结束后的jmeter测试结果(减少吞吐量后)。
基本上我需要的是一个关于这种行为可能是什么原因的线索。我已经尝试在wso2am和tomcat上增加线程池,但它没有效果。这就像请求根本没有到达。即使jmeter充满电,并且之前已经发送了更大的吞吐量。
我敢打赌,tomcat或wso2上的简单配置就是答案。任何帮助都是值得赞赏的。
谢谢和问候
答案 0 :(得分:0)
可能是由于JMeter无法足够快地发送请求,请尝试以下步骤:
有关上述要点的详细信息,请参阅9 Easy Solutions for a JMeter Load Test “Out of Memory” Failure文章,以及有关配置JMeter以获得最佳性能和吞吐量的更多提示