重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
建议客户端发送心跳包较为合适,原因:若用户较多,服务端发送心跳包易使服务器超负荷。客户端发送请求数据时可视为一次心跳包发送,节约处理速度。
创新互联长期为千余家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为广河企业提供专业的网站设计、成都网站设计,广河网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。
一般是客户端。服务器也可以定时轮询发心跳下去。
两者都可以...不过java的垃圾回收机制因为是自动的所以执行客户端程序的时候效率特别慢...一般用于服务器端或WEB开发...学java的重点就是以j2ee技术为核心的。
你的服务器可客户端都是顺序执行,不管怎么样,都会瞬间就执行服务器可客户端的close,这是不行的,所以当你客户端要连接服务器时,这时服务器已经关闭了,就不能连接了。
使用一个线程进行监控,如果空闲一定时间就发送一个心跳包。对于异步Socket可以一个线程监控多个连接。
1、专门使用一个线程进行监控, 如果空闲一定时间就发送一个心跳包。 对于异步Socket 可以一个线程监控多个 连接。
2、发心跳包。每隔几秒就发一个数据包过去,这是通讯常见问题。
3、发包方:可以是客户也可以是服务端,看哪边实现方便合理,一般是客户端。服务器也可以定时发心跳下去。一般来说,出于效率的考虑,是由客户端主动向服务器端发包,而不是服务器向客户端发。
4、你这个问题很先进!现在有一个刚出来的框架可以完全实现你这个需求,叫做Pushlet。你可以上网查查。
你的服务器可客户端都是顺序执行,不管怎么样,都会瞬间就执行服务器可客户端的close,这是不行的,所以当你客户端要连接服务器时,这时服务器已经关闭了,就不能连接了。
发心跳包。每隔几秒就发一个数据包过去,这是通讯常见问题。
使用一个线程进行监控,如果空闲一定时间就发送一个心跳包。对于异步Socket可以一个线程监控多个连接。
如果不想跑心跳就只能保持socket连接了,但这样对服务端压力太大,而且连接不是很稳定, 还不如跑心跳呢。