每隔一晚, 第一次socket给服务器端发送消息就会失败,但第2次又正常了,失败提示的错误如下:
2013-11-30 9:45:34 org.apache.catalina.core.StandardWrapperValve invoke 严重: Servlet.service() for servlet spring3 threw exception java.net.SocketException: Software caused connection abort: recv failed at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.read(Unknown Source) at com.mysql.jdbc.util.ReadAheadInputStream.fill(ReadAheadInputStream.java:113) at com.mysql.jdbc.util.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:160) at com.mysql.jdbc.util.ReadAheadInputStream.read(ReadAheadInputStream.java:188) at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:2452) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2906) at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2895) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3438) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1951) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2101) at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2548) at com.mysql.jdbc.ConnectionImpl.setAutoCommit(ConnectionImpl.java:4916) at org.apache.commons.dbcp.DelegatingConnection.setAutoCommit(DelegatingConnection.java:331) at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.setAutoCommit(PoolingDataSource.java:317) at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:91) at org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1354) at org.springframework.orm.hibernate3.HibernateTransactionManager.doBegin(HibernateTransactionManager.java:555) at org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:371) at org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:335) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:105) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202) at $Proxy22.findWebContentList(Unknown Source) at com.travel.spring.web.VideoController.beginPlay(VideoController.java:260) at sun.reflect.GeneratedMethodAccessor158.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:176) at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:426) at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:414) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:549) at javax.servlet.http.HttpServlet.service(HttpServlet.java:617) at javax.servlet.http.HttpServlet.service(HttpServlet.java:723) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:343) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109) at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:97) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:100) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:78) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:35) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:177) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:188) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:79) at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:355) at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:149) at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237) at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:470) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Unknown Source)
socket发送消息代码如下:
try { byte[] receive = new byte[200]; //长度为200 String ip = "192.168.1.222"; int port = 9996; //发送回收资源的scoket字符串 String send ="STKNET_DATA;STK_WEBSYS;STKMOD_NETVIDEO;STKNETMSG_FREE_LIVESCENERY_RES;1;1;1;1;50;stream/abc/"; Socket sock = new Socket(ip, port); sock.getOutputStream().write(new SocketClient(send).getbuf()); port=8888; //接收端口 sock.getInputStream().read(receive); SocketClient ee = SocketClient.getSocketClient(receive); sock.close(); } catch (Exception e) { e.printStackTrace(); }
求指点。
相关推荐
例如,第一次重连失败后,等待几秒再尝试,如果再次失败,等待的时间翻倍,直到达到最大重试次数或成功连接。 7. **Android权限管理**:在Android系统中,网络访问需要获取相应的权限。开发者需要在AndroidManifest...
特别提示:本软件需要FrameWork2.0支持,如果您第一次使用安装可能会稍慢一些,主要是在安装FrameWork2.0运行库;对于Microsoft下一代操作系统Vista则不需要。 功能说明: 1、串口调试; 2、Socket调试; 3、CRC/...
特别提示:本软件需要FrameWork2.0支持,如果您第一次使用安装可能会稍慢一些,主要是在安装FrameWork2.0运行库;对于Microsoft下一代操作系统Vista则不需要。 功能说明: 1、串口调试; 2、Socket调试; ...
#### 第2章:基本套接字 本章主要介绍了如何使用Java实现基本的套接字编程。包括TCP和UDP套接字的概念及其实现方式。 ##### 2.1 套接字地址 套接字地址用于标识网络中的一个端点。在TCP/IP网络中,套接字地址通常...
服务器就会发送一个探测报文段,每隔75秒钟发送一次,若一连发送10个探测报文任然没反应,服务器就认为客户端出了故障,接着就关闭连接。 网络层七层协议 网络层七层协议是指ISO规定的计算机网络的七层结构,分别...
这样,每隔一段时间,程序就会自动执行一次PING操作。 总结一下,VB定时PING网络源代码主要涉及以下知识点: 1. VB的MSWinsockControl组件及其基本使用。 2. ICMP协议和PING命令的基本概念。 3. 如何在VB中创建和...
// 延迟delay毫秒后开始,然后每隔period毫秒执行一次 ``` 2. ** Quartz库** Quartz是一个开源的作业调度框架,功能强大且灵活,支持复杂的调度需求。它可以按时间、日期或Cron表达式安排任务。Quartz允许定义...
在三次握手过程中,第一次握手是客户端向服务器发送SYN(同步序列编号)请求,表明希望建立连接;服务器收到请求后回应一个SYN+ACK(确认),表示同意建立连接;最后,客户端再发送一个ACK确认,确认连接已经建立。 ...
代码示例中通过一个简单的定时循环,每隔一段时间就检查一次服务器状态。如果服务器状态码不是200,则认为服务器出现问题,并执行发送邮件的操作。 6. 异常处理:程序中增加了异常处理机制,例如捕获IOError异常,...
`tcp_keepalive_time`定义了第一次发送保活探测的时间(单位为秒),`tcp_keepalive_intvl`定义了后续探测的间隔(单位为秒),`tcp_keepalive_probes`定义了在收到响应前允许发送的最大探测次数。 3. **C语言中的...
-c 每隔1秒就重新显示一遍,直到用户中断它。 -i 显示所有网络接口的信息。 -n 以网络IP地址代替名称,显示出网络连接情形。 -r 显示核心路由表,格式同"route -e"。 -t 显示TCP协议的连接情况。 -u 显示...
- **readn writen**:确保一次性读写完整个数据块。 ##### socket编程(五) - **read、write与recv、send**:基本输入输出函数。 - **readline实现**:用于读取一行文本。 - **用readline实现回射客户/服务器**:...
《GNU/Linux环境编程(第2版)》源代码是一份宝贵的学习资源,它涵盖了与在GNU/Linux操作系统下进行系统级编程相关的广泛主题。...每一个章节的源代码都是一次动手实践的机会,有助于将书本知识转化为实践经验。
在上述示例中,服务器每隔1秒发送一次内存使用情况给客户端。`getMemoryUsage`函数负责获取操作系统提供的内存信息,这可能需要调用特定平台的API或库。在实际应用中,你可以根据需要调整这个间隔时间,或者优化获取...
### jmeter测试websocket接口知识点详解 #### 一、Websocket协议简介 ...4. 在发送数据之后,每隔30秒发送空的心跳数据以维持连接。 通过上述步骤,可以在jmeter中有效测试Websocket接口的连通性和数据交互情况。
2. 保持心跳机制:为了维持TCP的长连接,客户端需每隔45秒发送心跳请求。心跳请求数据包的发送是保持连接的关键,以防止因网络延迟或服务器无响应导致的连接断开。 三、弹幕消息格式解析 1. 消息格式:每个弹幕...
- **Forward**:服务器内部转发,只发送一次请求,客户端地址栏不会变化。 - **SendRedirect**:客户端重定向,发送两次请求,客户端地址栏会变化。 **3. RMI 和 WebService 区别** - **RMI**:远程方法调用,基于...
6. 根据奈奎斯特定理,若要传输32路4KHz的音频,每秒采样8K次,每个采样值用8bit表示,总带宽需求为32 * 8 * 8K = 2.048 Mbps。 7. OSPF(Open Shortest Path First)是一种基于链路状态的路由协议,它通过收集和...