No buffer space available错误解决方案

2018-10-11 10:01:15来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

 

生产环境,突然爆发问题,网络正常,但是报网络不通错误,重启tomcat立刻好使

开始以为是tomcat的问题,调查了很久,后来加上堆栈日志才发现

简单来说,就是1-4分钟之内,使用了大量的http请求,达到了操作系统限制的最大值,所以许多请求处于wait状态,导致程序错误

原代码,httpClient 未关闭

finally {
            if (is != null) {
                is.close();
            }
            if (postMethod != null) {
                postMethod.releaseConnection();
            }
        }

 

新代码,httpClient正确关闭

finally {
            if (is != null) {
                try{
                is.close();
                }catch(Exception e){
                    
                }
            }
            if(postMethod!=null)
                postMethod.releaseConnection();
            if(httpClient!=null)
                httpClient.getHttpConnectionManager().closeIdleConnections(0);
        }

 

祝开发顺利!

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Java开发笔记(八)五种算术运算符

下一篇:增量数据同步中间件DataLink分享(已开源)