出站请求在一段时间后挂在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应用程序中的主要内容,如果未能解决你的问题,请参考以下文章
sun.security.provider.SHA2 使用 100% cpu 并在一段时间后挂起 5 分钟