gpt4 book ai didi

performance - 自托管应用程序中的最大并发请求

转载 作者:行者123 更新时间:2023-12-02 04:52:41 25 4
gpt4 key购买 nike

我有一个 selfhost signalr 应用程序,一切正常,但是当用户超过 5000 时,用户会迅速重新连接。我知道 appConcurrentRequestLimit 的默认值为 5000。我运行这个:

cd %windir%\system32\inetsrv
appcmd.exe set config /section:system.webserver/serverRuntime /appConcurrentRequestLimit:100000

但没有任何改变。我根据 this 增加了 maxConcurrentRequestsPerCPU 和 requestQueueLimit

但我还有问题。

我正在使用 windows server 2012 和 iis 8

最佳答案

你在这里是在黑暗中拍摄,你没有关于实际表现和正在发生的事情的数据。由于不同的原因(服务器超时、定期重新连接、服务器错误),用户可能会重新连接。有无数种可能性。

了解正在发生的事情和衡量性能的正确方法是使用默认配置运行基线性能负载测试,并收集相关的性能计数器,如当前请求、排队请求、当前连接数、最大连接数等

您还应该在服务器上收集任何相关的错误日志,以帮助您弄清楚发生了什么。

您可以在下面找到您需要的性能计数器的完整列表:

内存

.NET CLR Memory# bytes in all Heaps (for w3wp)

ASP.NET

ASP.NET\Requests Current
ASP.NET\Queued
ASP.NET\Rejected

中央处理器

Processor Information\Processor Time

TCP/IP

TCPv6\Connections Established
TCPv4\Connections Established

网络服务

Web Service\Current Connections
Web Service\Maximum Connections

线程

.NET CLR LocksAndThreads\ # of current logical Threads
.NET CLR LocksAndThreads\ # of current physical Threads

在图形上获得基线性能结果后,您可以修改配置(例如,像上面尝试的那样修改并发请求数),然后重新运行测试,并再次收集相同的性能计数器。

性能计数器结果不言而喻,它们会引导您找到解决方案。

您可以使用 Crank 等工具生成负载:

https://github.com/SignalR/SignalR/tree/dev/src/Microsoft.AspNet.SignalR.Crank

此外,您还可以查看 SignalR 故障排除指南:

http://www.asp.net/signalr/overview/testing-and-debugging/troubleshooting

关于performance - 自托管应用程序中的最大并发请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26411041/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com