基于GoEasy实现Java web实时数据推送

 以前都是使用ajax定时发送请求到后台,这种方式非常消耗系统资源。在大并发情况时如果不对线程进行控制的话,还会重复取数据,造成数据错误。
   鉴于这种情况,使用websocket通信就是一个非常好的选择。websocket能避免浪费系统资源,但是它有一个缺点就是不兼容低版本的IE浏览器(貌似是只支持IE10及以上的IE版本)。为了解决这个问题,我在网上逛了一圈,最终找到了GoEasy推送,网上说它是基于websocket和polling两种通信方式而开发的实时推送服务平台。通过测试得出,低版本的IE浏览器都是通过polling方式连接的,而其它浏览器都是websocket。GoEasy官网:http://goeasy.io
下面介绍如何使用GoEasy从java后台推送实时消息。
1. 从Java后台推送消息

1.1. 引入goeasy的Java SDK; 大家也可以通过maven将goeasy加入到项目中。SDK的下载和maven配置请大家从goeasy官网上获取: http://goeasy.io/www/started

快照

1.2. Java 代码

[java] view plain copy
  1. GoEasy goEasy = new GoEasy("03**********************51");    
  2. goEasy.publish("系统通知""系统将于今天中午十二点进行维护,届时系统不可用。"new PublishListener() {    
  3.     @Override    
  4.     public void onFailed(GoEasyError error) {    
  5.         System.out.println("推送失败了,Error code:" + error.getCode() + "; error content:" + error.getContent());    
  6.     }    
  7.     @Override    
  8.     public void onSuccess() {    
  9.         System.out.println("推送成功");    
  10.     }    
  11. });    

 
初始化GoEasy对象时,需要一个appkey.这个appkey需要大家自己去goeasy官网注册并创建一个app (大家可以先创建一个免费的app来测试)
到这里为止后台代码就已经完毕了。  

2. Web页面接收
2.1. 引入goeasy.js

[javascript] view plain copy
  1. <script type="text/javascript" src="http://cdn.goeasy.io/goeasy.js"></script>    

2.2. 订阅
[javascript] view plain copy
  1. <script type="text/javascript">    
  2.   var goEasy = new GoEasy({appkey: '03**********************51'});    
  3.   goEasy.subscribe({    
  4.     channel: '系统通知',    
  5.     onMessage: function(message){    
  6.       alert('收到:'+message.content);    
  7.     }    
  8.     });    
  9. </script>   

3. 最后一步确保在推送前订阅了的web页面已经打开(先订阅后推送),推送后你的消息会在订阅的web页面弹出来


除了Java后台推送之外,goeasy同时也提供了Restful API 供其开发语言的用户轻松实现实时web推送,如C#服务器实时推送,asp.net服务器实时推送, python服务器实时推送, PHP服务器实时推送, Ruby服务器实时推送.

当然,goeasy也提供从web页面直接推送消息的功能:

[javascript] view plain copy
  1. goEasy.publish({    
  2.      channel: '系统推送l',    
  3.      message: '来自web的推送消息:接收到了您的推送消息'    
  4. });   
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用goeasyJava实现web应用有以下步骤: 1. 配置开发环境:确保已经正确安装Java开发工具箱(JDK)和集成开发环境(IDE),比如Eclipse、IntelliJ IDEA等。 2. 创建Java Web项目:在IDE中新建一个Java Web项目,选择合适的项目类型和配置。 3. 导入goeasy库:从官方网站或Maven中央仓库下载最新版本的goeasy Java库,然后将其导入到项目中。 4. 创建Servlet:在项目中创建一个Servlet类,这是Java Web应用的处理请求和响应的主要逻辑实现。可以通过继承HttpServlet类或实现Servlet接口来创建Servlet类。 5. 配置Servlet映射:在项目的web.xml文件中配置Servlet的映射路径,使得当Web服务器接收到相应的请求时,能够正确地调用Servlet类进行处理。 6. 编写业务逻辑:在Servlet中编写相应的业务逻辑,比如处理用户请求、查询数据库、生成动态页面等。 7. 使用goeasy发送消息:在业务逻辑中,调用goeasy库提供的API发送消息。首先创建一个goeasy实例,并配置相应的参数,如Appkey和Appsecret。然后通过调用实例的publish方法,将要发送的消息发布到指定的频道或主题。 8. 接收消息并处理:在客户端页面中,使用goeasy库的订阅功能,订阅相应的频道或主题。当有消息到达时,goeasy会通过回调函数返回消息内容,可以根据需要进行相应的处理,比如更新页面数据、展示提示信息等。 9. 部署和测试:完成代码编写后,将Java Web项目部署到Web服务器上进行测试。在浏览器中输入相应的URL,触发Servlet处理请求并使用goeasy发送和接收消息。根据测试结果对代码进行优化和调试。 总的来说,使用goeasyJava实现Web应用需要创建Servlet、配置映射、编写业务逻辑,通过goeasy实现消息的发送和接收。这样可以实现实时通信、消息推送等功能,为Web应用增加更好的用户体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值