首页 文章

Azure应用服务TCP / IP端口耗尽

提问于
浏览
1

我最近得到了Azure的一个“建议”,即在我的App Service中达到TCP / IP端口的上限 .

耗尽的TCP / IP端口包含app ******的应用服务计划配置为使用媒体实例 . 该App Service计划中托管的应用程序正在使用每个中型实例可用的4096个可用TCP / IP端口中的90%以上 . 您可以升级实例大小以增加出站连接限制或配置连接池以便更有效地使用 .

Limits for App Service Plans (向上扩展)有区别吗?或者我可以 Configure my App Service 使用更多端口?或者这有 other solution 吗?

一个明显的解决方案是扩展,但由于CPU和内存使用率低,我宁愿不使用此选项,如果不一定 .

作为背景,该服务是使用.Net 4.6使用ASP.NET Core MVC构建的API .

2 回答

  • 0

    通常我们在.NET中进行调用后进行实例化和处理,但是HttpClient类有一个问题,因为我们应该在应用程序的整个生命周期中重用相同的类 .

    Azure端口在其计算环境中受到限制,因此与标准服务器相比,您可以更快地体验到这一点 .

    请仔细阅读以下内容:Reusing HttpClient

  • 0

    Yes, there is a difference in Limits for App Service Plans (scale up):

    最大连接限制如下:

    每个B1 / S1 / P1实例1,920个连接每个B2 / S2 / P2实例3,968个连接每个B3 / S3 / P3实例8,064个连接

    关于:其他服务(Cassandra,MSSQL,RabbitMQ等),但我不确定那些连接计数 This services calls will also result in TCP connection creation and need to be counted as well.

    Azure中的大多数服务都有自己的诊断和Dashaboard,我们可以在进行调试时进行关联,就像在我的情况下,MSSQL DTU不足以容纳并发请求的数量,因此连接正在堆积 .

    资源:

    https://blogs.technet.microsoft.com/latam/2015/06/01/how-to-deal-with-the-limits-of-azure-sql-database-maximum-logins/

    https://blogs.msdn.microsoft.com/appserviceteam/2018/03/01/deep-dive-into-tcp-connections-in-app-service-diagnostics/

相关问题