c# - .Net Core 3 WebAPI 在随机使用几天后变得无响应
问题描述
我们遇到了一个非常奇怪的问题,我们无法解决。我们有一个使用 Dot Net Core 3.1 制作的 API 应用程序,在 AWS EC2 实例上运行。API 工作得非常好,没有错误,也没有异常或负载过重。
随机数天后,一般在 20~40 天后,他们变得无响应,客户端收到 504 响应。
查看日志,我们看到每次尝试向端点发出请求时都会写入以下错误:
"System.OperationCanceledException: The operation was canceled.
at System.Threading.CancellationToken.ThrowOperationCanceledException()
at System.Threading.SemaphoreSlim.WaitUntilCountOrTimeoutAsync(TaskNode asyncWaiter, Int32 millisecondsTimeout, CancellationToken cancellationToken)
at Microsoft.IdentityModel.Protocols.ConfigurationManager`1.GetConfigurationAsync(CancellationToken cancel)
at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()
at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()
at Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.AuthenticateAsync()
at Microsoft.AspNetCore.Authentication.AuthenticationService.AuthenticateAsync(HttpContext context, String scheme)
at Microsoft.AspNetCore.Authorization.Policy.PolicyEvaluator.AuthenticateAsync(AuthorizationPolicy policy, HttpContext context)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Builder.Extensions.UsePathBaseMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Server.IIS.Core.IISHttpContextOfT`1.ProcessRequestAsync()"
由 Microsoft.AspNetCore.Server.IIS.Core.IISHttpServer 提出
只有在完全重新启动服务器后,应用程序才能再次运行。
服务器是 Windows Server 2019 实例。
解决方案
推荐阅读
- apache-spark - SAP DBTech JDBC:[288](在 22):不能使用重复的表名:
- asciidoc - 在选中的父项下缩进子项?
- sql - datepart 函数不考虑更新日期
- django-models - 尝试使用 abstract=True 在 django_cassandra_engine 中定义 BaseModel 时抛出所需的主键错误
- javascript - graphql 模拟订阅,更新问题
- java - Quartz:在 PostgreSQL 数据库中将 lockOnInsert 设置为 false 究竟意味着什么?
- vue.js - 如何使用 vue.config.js 将 vue js 项目部署到子目录
- react-native - 如何渲染带有标题的平面列表并根据设备大小显示它们
- react-native - 如何使用 useNavigation()
- python - 元素点击被拦截:元素在点 (x, x) selenium python 处不可点击