Java Socket編程報錯Connection reset by peer__JAVA

來源:互聯網
上載者:User

         Socket編程過程中,用戶端向服務端發送請求,會遇到以下錯誤:java.net.SocketException: recvfrom failed: ECONNRESET (Connection reset by peer)

01-11 23:07:25.065: W/System.err(11804): java.net.SocketException: recvfrom failed: ECONNRESET (Connection reset by peer)01-11 23:07:25.073: W/System.err(11804): at libcore.io.IoBridge.maybeThrowAfterRecvfrom(IoBridge.java:634)01-11 23:07:25.073: W/System.err(11804): at libcore.io.IoBridge.recvfrom(IoBridge.java:596)01-11 23:07:25.073: W/System.err(11804): at java.net.PlainSocketImpl.read(PlainSocketImpl.java:492)01-11 23:07:25.073: W/System.err(11804): at java.net.PlainSocketImpl.access$000(PlainSocketImpl.java:42)01-11 23:07:25.073: W/System.err(11804): at java.net.PlainSocketImpl$PlainSocketInputStream.read(PlainSocketImpl.java:242)01-11 23:07:25.073: W/System.err(11804): at java.io.BufferedInputStream.read(BufferedInputStream.java:290)01-11 23:07:25.073: W/System.err(11804): at com.emp.common.pos.JConnection.read(JConnection.java:185)

調試這種錯誤的時候,最煩的就是雙方扯皮,找不到問題根源,用戶端說伺服器處理有問題,伺服器說用戶端代碼有錯。


用戶端明明接入其他通道沒問題,為什麼接入該通道會報錯呢。那麼伺服器有沒有收到請求呢。先分析一下錯誤譯文:

Connection reset by peer:串連被對等端重設。那麼peer是什麼意思。有這麼一段話:


用戶端(client)是通訊的發起者,而伺服器(server)程式則被動等待用戶端發起通訊,並對其作出響應。 
一個程式是作為用戶端還是伺服器,決定了它在與其對等端(peer)建立通訊時使用的通訊端API(用戶端的對等端是伺服器,反之亦然)。


很明顯,得到了以下結論:

1、用戶端的peer就是伺服器,伺服器的peer是用戶端;

2、用戶端之前接入其他通道通訊正常,說明用戶端代碼出錯幾率不高,伺服器處理出錯嫌疑驟升;

3、伺服器reset了串連。至少說明了伺服器收到了請求報文,由於某種原因導致處理資料失敗,不得已reset了串連。


最後,經過排查確認,果然印證了我們的結論,伺服器在處理報文長度時出錯。兩邊協調修正一下,終於通訊成功了。








聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.