Flo*_*len 8 java spring broken-pipe ioexception websocket
我使用spring-boot-starter-websocket和spring boot 1.5.3.RELEASE当sockjs试图执行心跳时,我得到大量日志任务不知怎的,连接丢失了. 这篇文章说它已关闭(根据JIRA),但我仍然遇到同样的问题
这是我的配置
@Configuration 
@EnableWebSocketMessageBroker 
public class WebSocketConfig extends AbstractWebSocketMessageBrokerConfigurer {
            @Bean
            WebSocketHandler getWsHandler() {
                return new WebSocketHandler();
            }
            @Override
            public void configureMessageBroker(MessageBrokerRegistry config) {
                config.enableSimpleBroker("/topic");
            }
            @Override
            public void registerStompEndpoints(StompEndpointRegistry registry) {
                registry.addEndpoint("/ws").setAllowedOrigins("*").withSockJS();
            } }
这是日志
2017-07-11 15:10:23.753 INFO 7574 --- [MessageBroker-4] o.apache.coyote.http11.Http11Processor:在非容器线程上处理时发生错误.连接将立即关闭
java.io.IOException:sun.nio.ch.FileDispatcherImpl.write0(本机方法)〜[na:1.8.0]在sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47)〜[na :1.8.0] at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)〜[na:1.8.0] at sun.nio.ch.IOUtil.write(IOUtil.java:65)〜[na :1.8.0] at .nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:466)〜[na:1.8.0] at org.apache.tomcat.util.net.NioChannel.write(NioChannel.java:134 )〜[tomcat-embed-core-8.5.14.jar:8.5.14]在org.apache.tomcat.util.net.NioBlockingSelector.write(NioBlockingSelector.java:101)〜[tomcat-embed-core-8.5. 14.jar:8.5.14]在org.apache.tomcat.util.net.NioSelectorPool.write(NioSelectorPool.java:157)〜[tomcat-embed-core-8.5.14.jar:8.5.14] at org. org.apache.tomcat.util.net.SocketWrapperBase上的apache.tomcat.util.net.NioEndpoint $ NioSocketWrapper.doWrite(NioEndpoint.java:1259)~ [tomcat-embed-core-8.5.14.jar:8.5.14] org.apache.tomcat中的.doWrite(SocketWrapperBase.java:670)~ [tomcat-embed-core-8.5.14.jar:8.5.14] .util.net.SocketWrapperBase.flushBlocking(SocketWrapperBase.java:607)〜[tomcat-embed-core-8.5.14.jar:8.5.14] at org.apache.tomcat.util.net.SocketWrapperBase.flush(SocketWrapperBase. java:597)〜[tomcat-embed-core-8.5.14.jar:8.5.14] at org.apache.coyote.http11.Http11OutputBuffer.flushBuffer(Http11OutputBuffer.java:581)~ [tomcat-embed-core-8.5 .14.jar:8.5.14]在org.apache的org.apache.coyote.http11.Http11OutputBuffer.flush(Http11OutputBuffer.java:272)〜[tomcat-embed-core-8.5.14.jar:8.5.14] orco.apache.coyote.AbstractProcessor.action(AbstractProcessor.java:279) 〜[tomcat-embed-core-8.5.14.jar:8.5.14] at org.apache.coyote.Response.action(Response.java:172)[tomcat-embed-core-8.5.14.jar:8.5. 14] org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:317)[tomcat-embed-core-8.5.14.jar:8.5.14] at org.apache.catalina.connector.OutputBuffer.flush (OutputBuffer.java:284)[tomcat-e mbed-core-8.5.14.jar:8.5.14] at org.apache.catalina.connector.Response.flushBuffer(Response.java:541)[tomcat-embed-core-8.5.14.jar:8.5.14]在org.apache.catalina.connector.ResponseFacade.flushBuffer(ResponseFacade.java:312)[Tomcat的嵌入芯-8.5.14.jar:8.5.14]在javax.servlet.ServletResponseWrapper.flushBuffer(ServletResponseWrapper.java:176 )[tomcat-embed-core-8.5.14.jar:8.5.14]在javax.servlet.ServletResponseWrapper.flushBuffer(ServletResponseWrapper.java:176)[tomcat-embed-core-8.5.14.jar:8.5.14]在org.springframework.security.web.util.OnCommittedResponseWrapper.flushBuffer(OnCommittedResponseWrapper.java:159)[弹簧安全web的4.2.2.RELEASE.jar:4.2.2.RELEASE]在org.springframework.http.server .ServletServerHttpResponse.flush(ServletServerHttpResponse.java:96)[弹簧网络4.3.8.RELEASE.jar:4.3.8.RELEASE]在org.springframework.web.socket.sockjs.transport.session.AbstractHttpSockJsSession.writeFrameInternal(AbstractHttpSockJsSession .java:350)[spring-websocket-4.3.8.RELEASE.j ar:4.3.8.RELEASE] at org.springframework.web.socket.sockjs.transport.session.AbstractSockJsSession.writeFrame(AbstractSockJsSession.java:322)[spring-websocket-4.3.8.RELEASE.jar:4.3.8. RELEASE]在org.springframework.web.socket.sockjs.transport.session.AbstractSockJsSession.sendHeartbeat(AbstractSockJsSession.java:255)弹簧的WebSocket-4.3.8.RELEASE.jar:4.3.8.RELEASE]在org.springframework .web.socket.sockjs.transport.session.AbstractSockJsSession $ HeartbeatTask.run(AbstractSockJsSession.java:456)弹簧的WebSocket-4.3.8.RELEASE.jar:4.3.8.RELEASE]在org.springframework.scheduling.support .DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54)java.util.concurrent.Executors中的[spring-context-4.3.8.RELEASE.jar:4.3.8.RELEASE] $ RunnableAdapter.call(Executors.java:511)[ na:1.8.0] at java.util.concurrent.FutureTask.run(FutureTask.java:266)[na:1.8.0] at java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.access $ 201(ScheduledThreadPoolExecutor.java:180) [ NA:1.8.0]在java.util.concurrent.ScheduledThreadPoolExecutor中$ ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)[NA:1.8.0]在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) na:1.8.0] at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)[na:1.8.0] at java.lang.Thread.run(Thread.java:744)[na: 1.8.0]}
| 归档时间: | 
 | 
| 查看次数: | 1055 次 | 
| 最近记录: |