zoukankan      html  css  js  c++  java
  • 记一次.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<Startup>().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的问题???留待大佬解惑~
    好在,问题暂时得到解决了,记录一下。

  • 相关阅读:
    新添61工程文件后无法编译问题
    beaglebone_black_学习笔记——(4)闪烁LED之shell命令
    PADS技巧——铺铜
    自定义map对象,用于再不支持es6的map的时候
    vue.js基础学习(2)
    vue.js基础学习(1)
    ie浏览器float兼容性
    webAPI路由的使用
    webAPI中使用log4net进行日志记录
    webAPI中使用FormsAuthenticationTicket作为登录权限票据
  • 原文地址:https://www.cnblogs.com/wanggang2016/p/13826754.html
Copyright © 2011-2022 走看看