出站请求在一段时间后挂在ASP.NET Core 3.0应用程序中

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了出站请求在一段时间后挂在ASP.NET Core 3.0应用程序中相关的知识,希望对你有一定的参考价值。

因此,我面临.NET Core 3.0的IIS问题。不知道问题出在哪里,但是这是场景:

我在带有Windows和IIS的AWS上具有EC2实例,用于托管我的ASP.NET Core 3.0服务器端Blazor应用程序。

我从该应用程序向AppCenter和我们的Payment Gateway之类的设备进行了一些出站呼叫。通常,这些请求发送和响应很好,但是有时(这已经发生3次)出站请求只是停止/挂起,永远不会继续。发生这种情况时,直到我重新启动服务器本身,它才能自行解决,这时它将继续工作未知的时间,直到再次发生,我们回到正题。

旁注,服务器本身可以发出出站请求,就像我尝试通过发出相同请求一样。服务器上的邮递员没有问题,但是发生问题时,它只是挂在应用程序中的出站请求上。

有人知道这可能是什么吗?

编辑:添加了用于进行此出站呼叫的代码。就这么简单。挂起的行是var result = await client.PostAsync(apiUrl, content);

using (var client = new HttpClient())

    var contentJson = JsonConvert.SerializeObject(myCustomObject);
    var content = new StringContent(contentJson, Encoding.UTF8, "application/json");
    content.Headers.Add("X-API-Token", apiToken);
    var result = await client.PostAsync(apiUrl, content);

答案
using (var client = new HttpClient())

读取You are using HttpClient wrong

这是您描述的症状的一个候选者。

以上是关于出站请求在一段时间后挂在ASP.NET Core 3.0应用程序中的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NET 应用程序在调用后挂起

sun.security.provider.SHA2 使用 100% cpu 并在一段时间后挂起 5 分钟

理解ASP.NET Core

求助:为啥我编的C++程序在自己电脑上能正常运行,但编译后挂在后台linux系统下就总是运行一半后出错,

换个角度学习ASP.NET Core中间件

换个角度学习ASP.NET Core中间件