`
colorlife
  • 浏览: 132332 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

遭遇java.net.SocketException: Broken pipe

阅读更多

昨天,我遭遇了java.net.SocketException: Broken pipe错误,烦恼了很久。

 

最后发现,用类的一个对象来处理 socket 容易产生这种错误。多个客户端连接服务器,会使用多线程来处理这些 socket 连接,如果线程中的处理由某个类来操作,则对于每个线程应该 new 一个对象来处理,这样确保各个线程不会相互影响。

分享到:
评论
3 楼 bjmike 2009-12-26  
最近在做一个mina服务器端的测试。测试客户端写了2000个并发,在1分钟之内发送,结果发了一个小时,达到9万条的时候,开始报socket broken pipe error,一直报了300条,很纳闷
2 楼 colorlife 2009-05-09  
pooyavivi 写道

我最近也受到BEOKEN PIPE的困扰。
我使用HTTPCLIENT模拟了一个浏览器向TOMCAT发送一定压力的请求,
在POST了N次之后客户端就会不断地抛出BROKEN PIPE异常,客户端每次POST应该都是一次SOCKET连接吧,每次提交后我都会去关闭连接。
客户端的实现我是用了多线程的,楼主如果有这方面的经验希望能讨论一下。

BROKEN PIPE 是因为客户端和服务器端数据不同步而引起,具体情况具体分析,原因有很多
1 楼 pooyavivi 2009-05-05  
我最近也受到BEOKEN PIPE的困扰。
我使用HTTPCLIENT模拟了一个浏览器向TOMCAT发送一定压力的请求,
在POST了N次之后客户端就会不断地抛出BROKEN PIPE异常,客户端每次POST应该都是一次SOCKET连接吧,每次提交后我都会去关闭连接。
客户端的实现我是用了多线程的,楼主如果有这方面的经验希望能讨论一下。

相关推荐

    JAVA.NET.SOCKETEXCEPTION TOO MANY OPEN FILES解决方法

    JAVA.NET.SOCKETEXCEPTION TOO MANY OPEN FILES解决方法 JAVA.NET.SOCKETEXCEPTION TOO MANY OPEN FILES错误是一种常见的网络编程错误,发生在Java应用程序中, especialmente 在 Linux 操作系统中。该错误的出现是...

    在Win7系统下抛出java.net.SocketException的解决办法

    ### 在Win7系统下抛出java.net.SocketException的解决办法 #### 问题背景及原因分析 在使用MyEclipse开发工具结合JBoss服务器进行项目开发的过程中,遇到一个常见但令人头疼的问题:当启动JBoss服务器时,控制台...

    java.net.SocketException Connection reset 解决方法

    "java.net.SocketException Connection reset 解决方法" 在 Java 编程中,SocketException 是一种常见的异常,特别是在网络编程中。Conexion reset by peer 是一种特殊的 SocketException,它发生在客户端和服务器...

    java.net.SocketException: No route to host 异常原因

    NULL 博文链接:https://zhoudan241.iteye.com/blog/1432014

    java.net.SocketException: Connection reset 解决方法

    Java中的`java.net.SocketException: Connection reset`是一个常见的网络编程错误,通常表示在TCP/IP通信过程中,连接突然中断。这个异常可能在客户端或服务器端发生,通常与数据传输的异常中断有关。 首先,我们来...

    http接口调用报错.rar

    接口调用报错:java.net.SocketException: java.lang.ClassNotFoundException: Cannot find the specified class com.ibm.websphere.ssl.protocol.SSLSocketFactory

    java.net.SocketException(解决方案).md

    常见的问题

    Ice-3.7.4.msi for windows版

    Caused by: java.net.ConnectException: Connection refused at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:574) at ...

    Linux下打开的文件过多错误

    Linux下运行tomcat或者was出现java.net.SocketException: 打开的文件过多错误 tomcat报“too many open files”的错误,解决办法如下:

    Java Socket常见异常处理

    5. **java.net.SocketException: Broken pipe** 在`Connect reset by peer`异常之后继续尝试写操作时,可能会遇到此异常。同样,需要确保在连接断开后不再进行无效的读写操作,并及时关闭Socket。 编写网络程序时...

    connection reset解决方案(亲测可用).md

    connection reset解决方案(亲测可用).md

    fastdfs使用java

    在Java中使用FastDFS,首先需要在项目中引入FastDFS的Java客户端库。配置client.conf文件,设置tracker服务器的地址和其他相关参数。接着创建FastdfsClient和FastdfsUtil类,前者用于与FastDFS服务器通信,后者封装...

    javaerror处理资料

    java.net.SocketException: Broken pipe 此异常与第4种异常类似,都是因为远程主机突然断开了连接。区别在于前者更多出现在写操作时,而后者则更普遍。为了避免这类异常,可以定期检测Socket的状态,例如通过设置...

    C# 服务器发送邮件失败实例分析

    “{“success”:false,”message”:”错误System.Net.Mail.SmtpException: Failure sending mail. —> System.Net.WebException: The remote name could not be resolved: ‘smtp.163.com’ 分析: 邮件发送相关...

    System.SR.dll 无法显示错误信息

    System.Net.WebException: 无法显示错误消息,原因是无法找到包含此错误消息的可选资源程序集 ---> System.Net.Sockets.SocketException: 无法显示错误消息,原因是无法找到包含此错误消息的可选资源程序集 ...

    Socket长连接异常处理

    java.net.SocketException: Broken pipe 该异常可能发生在客户端和服务器端,原因是在连接断开后继续写数据。解决方法是确保在关闭连接前完成所有的数据传输,并检测对方的关闭连接操作。 编写网络程序时需要注意...

    JMeterPlugins-Standard.jar和JMeterPlugins-Extras.jar.rar

    《JMeter插件详解:Standard与Extras的魅力》 在性能测试领域,Apache JMeter是一款备受推崇的开源工具,它能够对各种服务器、网络或对象进行压力和负载测试。然而,尽管JMeter本身功能强大,但有时其内置的功能并...

    如何解决线程太多导致java socket连接池出现的问题

    3. 错误信息:当Socket连接池出现问题时,可能会出现错误信息,如"java.net.SocketException: No buffer space available (maximum connections reached?): listen failed"。 解决方法 要解决线程太多导致Socket...

    java网络编程示例

    import java.net.SocketException; public class UDPServer { public static void main(String[] args) { try { byte [] buffer = new byte[1024]; DatagramSocket socket = new DatagramSocket(4444); ...

    Java实现modbus tcp协议数据读写,项目内包含modbus slave仿真软件

    本项目专注于使用Java语言实现Modbus TCP/IP协议的读写功能,提供了两种不同的实现方案:jlibmodbus和modbus4j库。这两种库都是Java社区开发的开源工具,专门用于处理Modbus通信。 首先,我们来看jlibmodbus。...

Global site tag (gtag.js) - Google Analytics