.net调用本地html,记一次.netcore 3.1 本地正常,服务器 502 bad gateway(响应时长超过2分钟)...

有一个项目,在后台通过httpclient调用其他服务接口,该服务中会进行较复杂的计算,计算时长超过2分钟;在本地调试的时候,一切OK,但是部署到服务器,挂在IIS上后,

只要一调用该接口,计算完之后直接502错误(后台中添加日志检测逻辑是计算完成的:偶尔会出现计算未完成的情况),然后疯狂在网上看看有没有解决方案:

1、HttpClient _client = new HttpClient() 使用 using语法 或使用全局静态

2、_client.PostAsync(requestAddress, byteContent).Result 改为 await _client.PostAsync(requestAddress, byteContent)

3、_client.Timeout = TimeSpan.FromMinutes(30);

4、Program中配置超时时长:

public static IHostBuilder CreateHostBuilder(string[] args) =>Host.CreateDefaultBuilder(args)

.ConfigureWebHostDefaults(webBuilder=>{

webBuilder.UseStartup().UseKestrel(option =>{

option.Limits.KeepAliveTimeout= TimeSpan.FromMinutes(30);

option.Limits.RequestHeadersTimeout= TimeSpan.FromMinutes(30);

}).UseUrls("http://*:8804");

});

5、修改IIS并发进程数,1改为8

等等以上都没有效果,查看系统日志等等,也没有记录;看服务器的性能参数、线程等,也没有存在调用时飙升的情况。。。。。啊啊,哪位大佬碰到过麻烦指导一下;

实在没辙,因为是.netcore 代码嘛,可以不依赖与IIS,我直接运行exe启动,结果,可以了!!!蛋碎了一地,难道是IIS的问题???留待大佬解惑~

好在,问题暂时得到解决了,记录一下。

原文:https://www.cnblogs.com/wanggang2016/p/13826754.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值