发布网友 发布时间:2022-04-22 06:15
共1个回答
热心网友 时间:2022-06-21 14:14
如果你想从服务器端推送消息到客户端的话,你可以使用一下GoEasy推送,它有Restful API 支持多语言,而且针对java他们还特别做了SDK,使用很简单方便。同时它也支持客户端推送。由于它支持websocket 和polling两种连接方式所以兼顾大多数主流浏览器,低版本的IE浏览器也是支持的,个人觉得很不错Java-websocket的搭建非常之容易,没用框架的童鞋可以在这里下载撸主亲自调教好的java-websocket程序: Apach Tomcat 8.0.3+MyEclipse+maven+JDK1.7: spring4.0以后加入了对websocket技术的支持,撸主目前的项目用的是SSM(springMVC+spring+MyBatis)框 架,所以肯定要首选spring自带的websocket了,好,现在问题来了,撸主在网上各种狂搜猛找,拼凑了几个自称是 spring websocket的东东,下来一看,废物,其中包括从github上down下来的大体思路就是将返回数据给用户的定时行为,跟更新内存状态的行为分开:
1.当用用户连接时,开启一个计时器,每秒计算一次内存状态,并且将这个结果保存到一个全局变量中。
2.用户本身还需要开启一个计时器,每秒会去全局变量拉取内存的状态,然后返回给客户端呈现。
3.当所有用户都处于断开连接时,服务器处于挂起状态,不在去获取内存状态的变化,节省了资源浪费。
这样,不管有多少个用户连接到服务器,更新内存的状态的行为只会每秒执行一次。