简体   繁体   English

NodeJs服务器在压力测试下不响应

[英]NodeJs server does not respond under stress test

I'm trying to do a stress test(using SOAPUI, screenshot attached with all the test parameters) on a nodejs application hosted on a Windows Azure VM. 我正在尝试对Windows Azure VM上托管的nodejs应用程序进行压力测试(使用SOAPUI,屏幕快照附带所有测试参数)。

As shown in the screenshot, a lot of requests run into errors. 如屏幕截图所示,很多请求都会出错。 I'm using a mongodb server for db interaction and pm2 for keeping the server running indefinitely. 我使用mongodb服务器进行数据库交互,使用pm2保持服务器无限期运行。

Is there any kind of throttling being done by Azure/Azure VM? Azure / Azure VM是否正在进行任何限制? There seems to be error connecting to the db from the node application when this test is done. 完成此测试后,似乎从节点应用程序连接到db时出错。

Any setting I need to do, or set any parameters? 我需要做任何设置还是设置任何参数? Any help/pointers will be helpful. 任何帮助/指针都会有所帮助。 Thanks. 谢谢。

Stress test for the nodejs application, hosted on Windows Azure VM with mongodb at the backend database[Screenshot link] 在Windows Azure VM上托管的nodejs应用程序的压力测试,后端数据库使用mongodb [截屏链接]

Azure provides a list of common Azure subscription and service limits, quotas, and constraints. Azure提供了常见的Azure订阅和服务限制,配额和约束的列表。 You can refer to the doc https://azure.microsoft.com/en-us/documentation/articles/azure-subscription-service-limits/ to know these limits. 您可以参考文档https://azure.microsoft.com/en-us/documentation/articles/azure-subscription-service-limits/来了解这些限制。

In the section Networking Limits , There is a limit for concurrent TCP connections for a VM that the default limit is 500K, see the picture below: 在“ Networking Limits ”部分中,VM的并发TCP连接限制为默认限制为500K,请参见下图:

在此处输入图片说明

And I searched a third-party performance showdown report for MongoDB vs. SQL Server 2008, please move to http://blog.michaelckennedy.net/2010/04/29/mongodb-vs-sql-server-2008-performance-showdown/ . 我搜索了MongoDB与SQL Server 2008的第三方性能对决报告,请转到http://blog.michaelckennedy.net/2010/04/29/mongodb-vs-sql-server-2008-performance-showdown / The MongoDB has very high performance for read and write operations. MongoDB在读取和写入操作方面具有很高的性能。

So I don't think your test result for lots of errors was caused by the limits of Azure or interaction with MongoDB. 因此,我认为您的许多错误测试结果都不是由Azure的限制或与MongoDB的交互引起的。

Per my experience, there might be two cases for your test issue. 根据我的经验,您的测试问题可能有两种情况。

  1. ISP limits the number of concurrent TCP connections on your test networking. ISP限制了测试网络上并发TCP连接的数量。 Please enquire the local ISP. 请咨询当地的ISP。
  2. NodeJS processing model is single thread model with event loop architecture. NodeJS处理模型是具有事件循环体系结构的单线程模型。 Please review the nodejs code and check the asynchronous logic whether it exists resource competition. 请查看nodejs代码,并检查异步逻辑是否存在资源竞争。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM