java.net.SocketException: Connection reset
2013-12-03 09:43
525 查看
先说一下公司基础架构的部署关系:
![](http://img.blog.csdn.net/20131203094607875?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvamF5bm9s/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
问题描述:
web cluser 发送请求到 app cluster的时候,偶尔报错,报错信息如下:
Caused By:java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:168)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:258)
at java.io.BufferedInputStream.read(BufferedInputStream.java:317)
at weblogic.net.http.MessageHeader.isHTTP(MessageHeader.java:224)
Truncated. see log file for complete stacktrace
问题解决步骤:
由于不是所有的请求都会出现该问题,从两个方面入手查问题。
1.偶发性报错,首先会考虑是否有线程安全问题。
2.通过网络抓包,分别在web ,f5,app三者上进行抓包,分析报文内容。
经过代码排查,确定此问题与线程安全没关。通过抓包,发现被reset掉的http请求,请求头内容都非常大,有60多K,
而且都在f5被reset掉了。
查看F5的配置,发现F5有一项配置是限制请求头的大小,默认是30K。
问题描述:
web cluser 发送请求到 app cluster的时候,偶尔报错,报错信息如下:
Caused By:java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:168)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:258)
at java.io.BufferedInputStream.read(BufferedInputStream.java:317)
at weblogic.net.http.MessageHeader.isHTTP(MessageHeader.java:224)
Truncated. see log file for complete stacktrace
问题解决步骤:
由于不是所有的请求都会出现该问题,从两个方面入手查问题。
1.偶发性报错,首先会考虑是否有线程安全问题。
2.通过网络抓包,分别在web ,f5,app三者上进行抓包,分析报文内容。
经过代码排查,确定此问题与线程安全没关。通过抓包,发现被reset掉的http请求,请求头内容都非常大,有60多K,
而且都在f5被reset掉了。
查看F5的配置,发现F5有一项配置是限制请求头的大小,默认是30K。
相关文章推荐
- 算法之求数组中第i大的数
- 编程这件小事儿之Java篇:Java四个核心概念
- Java 编程下字符串的 16 位、32位 MD5 加密
- ant打包时遇到java文件非法字符\65279
- struts2常用标签
- Java开发中文件读取方式总结
- [Java] 容器-03 增强的For循环 / Set 方法
- [Java] 容器-03 增强的For循环 / Set 方法
- jetbrick-template 1.1.0 发布,支持 #tag, #macro, layout
- java中关键字volatile的作用
- MyEclipse 10安装SVN插件
- java程序的加载过程
- JDK内存配置
- struts2获取文件类型,文件后缀名
- Java类集--Stack类
- Java 8新特性探究(五)重复注解(repeating annotations)
- Eclipse,myeclipse安装 配置Maven
- [Java] 容器-02 HashSet 类 / Iterator 接口
- [Java] 容器-02 HashSet 类 / Iterator 接口
- java 错误之:Exception in thread "main" java.lang.NoClassDefFoundError