以前都是使用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 代码
GoEasy goEasy = new GoEasy("03**********************51");
goEasy.publish("系统通知", "系统将于今天中午十二点进行维护,届时系统不可用。", new PublishListener() {
@Override
public void onFailed(GoEasyError error) {
System.out.println("推送失败了,Error code:" + error.getCode() + "; error content:" + error.getContent());
}
@Override
public void onSuccess() {
System.out.println("推送成功");
}
});
初始化GoEasy对象时,需要一个appkey.这个appkey需要大家自己去goeasy官网注册并创建一个app (大家可以先创建一个免费的app来测试)
到这里为止后台代码就已经完毕了。
2. Web页面接收
2.1. 引入goeasy.js
<script type="text/javascript" src="http://cdn.goeasy.io/goeasy.js"></script>
2.2. 订阅
<script type="text/javascript">
var goEasy = new GoEasy({appkey: '03**********************51'});
goEasy.subscribe({
channel: '系统通知',
onMessage: function(message){
alert('收到:'+message.content);
}
});
</script>
3. 最后一步确保在推送前订阅了的web页面已经打开(先订阅后推送),推送后你的消息会在订阅的web页面弹出来
除了Java后台推送之外,goeasy同时也提供了Restful API 供其开发语言的用户轻松实现实时web推送,如C#服务器实时推送,asp.net服务器实时推送, python服务器实时推送, PHP服务器实时推送, Ruby服务器实时推送.
当然,goeasy也提供从web页面直接推送消息的功能:
JavaScript代码:
goEasy.publish({
channel: '系统推送l',
message: '来自web的推送消息:接收到了您的推送消息'
});
就这样简单。
- 大小: 20.8 KB
- 大小: 44.1 KB
分享到:
相关推荐
Java实现GoEasy实时推送demo、JAVA Web实时消息后台服务器推送技术
越来越多的项目需要用到...支持不同的开发语言:GoEasy推送 提供了Restful API接口,无论你的后台程序用的是哪种语言都可以通过Restful API来实现后台实时推送。如:Java,PHP, C#, Ruby, Python, C, C++, ASP.NET,Node
GoEasy上架DCloud Uniapp插件市场已经有一个多月了,收到很多Uniapp开发人员的赞扬和好评,小编在此隔着屏幕向大家鞠躬,小编和GoEasy团队会继续努力,持续为Uniapp开发者提供最简单且优雅的API,稳定高速可靠的即时...
NULL 博文链接:https://fengziit.iteye.com/blog/2334796
最近使用GoEasy在web端进行实时信息推送,代码极其简单,记录一下,供大家参考
本篇文章主要介绍了PHP实现Web实时消息后台服务器推送技术,这里整理了详细的代码,有需要的小伙伴可以参考下。
基于node的前端websocket简单实时推送数据基本用法 含有goEasy基础版本
GoEasy小程序即时通讯源码是一个基于GoEasy提供的websocket通讯服务,实现的小程序即时通讯,支持一对一单聊、群聊、会话列表、上下线提醒、历史消息、离线消息,支持发送图片、视频、语音,更多功能可以下载下来...
GoEasy小程序即时通讯源码是一个基于GoEasy提供的websocket通讯服务 实现的小程序即时通讯,支持一对一单聊、群聊、会话列表、上下线提醒、 历史消息、离线消息,支持发送图片、视频、语音,更多功能可以下载下来...
为了测试效果,大家可以多打开几个页面然后在推送一条消息来看看消息的实时性。另外大家也可以打开goeasy 官网上的chat demo页面来查看推送结果。(资料中的appkey用的是goeasy demo的key,在后续实现中,大家需要...
GoEasy小程序即时通讯源码是一个基于GoEasy提供的websocket通讯服务,实现的小程序即时通讯,支持一对一单聊、群聊、会话列表、上下线提醒、历史消息、离线消息,支持发送图片、视频、语音,更多功能可以下载下来...
详细的GoEasy推送例子,里面有说明文档和代码实现例子,很容易实现推送功能。
GoEasy小程序即时通讯源码是一个基于GoEasy提供的websocket通讯服务,实现的小程序即时通讯,支持一对一单聊、群聊、会话列表、上下线提醒、历史消息、离线消息,支持发送图片、视频、语音,更多功能可以下载下来...
1.启动项目:访问http://localhost:8080/goeasy/ 2.执行main方法,页面弹出弹窗表示成功.
GoEasy小程序即时通讯源码是一个基于GoEasy提供的websocket通讯服务,实现的小程序即时通讯,支持一对一单聊、群聊、会话列表、上下线提醒、历史消息、离线消息,支持发送图片、视频、语音,更多功能可以下载下来...
主要介绍了微信小程序使用GoEasy实现websocket实时通讯的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
goeasy
java 1.6 websocket tomcat7.0.27以上版本 我自己用的tomcat7.0.42
goeasy开发相关jar包 简单demo