[英]MalformedChunkCodingException: Chunked stream ended unexpectedly
Enter code here I've implemented an SSE server and client. 在这里输入代码我已经实现了SSE服务器和客户端。 The server is implemented using
Netty
and the client uses Apache http client
. 服务器使用
Netty
实现,客户端使用Apache http client
。
If I send a message at least every 30 seconds it all seems to work fine, but if I do not I will intermittently get this exception: 如果我至少每30秒发送一条消息,那么一切似乎都可以正常工作,但是如果我不这样做,则会间歇性地收到此异常:
```
Caused by: org.apache.http.MalformedChunkCodingException: Chunked stream ended unexpectedly
W/System.err( 2879): at org.apache.http.impl.io.ChunkedInputStream.getChunkSize(ChunkedInputStream.java:222)
W/System.err( 2879): at org.apache.http.impl.io.ChunkedInputStream.nextChunk(ChunkedInputStream.java:183)
W/System.err( 2879): at org.apache.http.impl.io.ChunkedInputStream.read(ChunkedInputStream.java:155)
W/System.err( 2879): at org.apache.http.conn.EofSensorInputStream.read(EofSensorInputStream.java:159)
W/System.err( 2879): at java.io.InputStreamReader.read(InputStreamReader.java:244)
W/System.err( 2879): at java.io.BufferedReader.fillBuf(BufferedReader.java:130)
W/System.err( 2879): at java.io.BufferedReader.readLine(BufferedReader.java:354)
W/System.err( 2879): at com.clover.engine.push.SSEConnection$1.call(SSEConnection.java:85)
W/System.err( 2879): at com.clover.engine.push.SSEConnection$1.call(SSEConnection.java:79)
W/System.err( 2879): at java.util.concurrent.FutureTask.run(FutureTask.java:234)
```
Right now I'm sending a keep alive message every 30 seconds, but I'd prefer to not have to. 现在,我每30秒发送一条保持活动状态的消息,但我不想这样做。
Any suggestions on how to prevent this exception from occurring? 关于如何防止此异常发生的任何建议?
导致此异常的原因实际上是haproxy,它在空闲时间过长时关闭了套接字。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.