`
sanrenxing_1
  • 浏览: 17271 次
社区版块
存档分类
最新评论

大道至简--GoEasy推送

阅读更多

获取变推送,被动变主动

以往一提到需要数据实时显示,大家首先想到的就是利用轮询方式定时向后台去查看有没有信息,有的话,web页面将向下拉取这些数据。慢慢地大家意识到这种方式十分消耗客户端和服务端的资源,那么怎么做是最优方式呢? 将被动变主动!就如同对讲机一样,当对方有话要讲时直接讲你就可以听到了,而不是你不停问对方有话讲没。由此而衍生出的技术有websocket, socket.io。它们的共同特点都是在客户端和服务器端建立一个管道,通过这个管道服务器端可以直接将实时信息主动推送给客户端。

 

直击痛点

恐怕问题又来了,如何正确有效的将websocket, socket.io应用到你的系统中呢?于是乎你开始找谷哥,找度娘,发现大家的实现实例都是长篇大论,代码都是几百行。头痛吗?如果这时有人已经集成了这些技术,但是代码复杂度降低了几十个点,你是不是心动了呢?

 

技术选择

到目前为止能够提供推送服务的技术不在少数,什么PubNub,极光,云推,友盟,GoEasy等。如何选择?我选择的原则是代码是否简单,代码是否易懂,服务是否稳定。经过对比,PubNub和GoEasy在代码的简洁易懂方面是达到了我的要求的,代码实现思路跟用对讲机通信一样简单明了。但是由于PubNub是国外的产品,有时候访问官网需要连接VPN,考虑到系统用户都在国内及服务的稳定性,最后GoEasy拔得头筹。

Web实时消息后台服务器推送技术

 

大道至简

既然选择了GoEasy, 不在此介绍一下它的代码,谁知道我是不是口说无凭?下面我用对讲机来比喻GoEasy实现推送消息的过程。
假如你是你是服务器端,你的女朋友是客户端:
1.  既然要通信,至少你和女朋友每人要有一台对讲机吧。
      服务器端:引入GoEasy到项目中           

<repository>
  <id>goeasy</id>
  <name>goeasy</name>
  <url>http://maven.goeasy.io/content/repositories/releases/</url>
</repository>
...
<dependency>
  <groupId>io.goeasy</groupId>
  <artifactId>goeasy-sdk</artifactId>
  <version>0.3.3</version>
</dependency>

 

     客户端:引入GoEasy.js

<script type="text/javascript" src="http(s)://cdn.goeasy.io/goeasy.js"></script>

 

2. 打开对讲机的电源,确保你们在可通讯范围内。
   服务器端:创建一个GoEasy对象,appkey连接到GoEasy的凭证

GoEasy goEasy = new GoEasy("appkey" );

 

   客户端:创建一个GoEasy对象,appkey连接到GoEasy的凭证

<script type="text/javascript">var goEasy = new GoEasy({
               appkey: 'Your app key here'
               });
</script>

 

3.  将你们的对讲机调到同一频道,你开始讲话,女朋友准备收听
      客户端:订阅频道1

goEasy.subscribe({
                 channel: 'channel1',
                 onMessage: function(message){
                              alert('Meessage received:'+message.content);//女朋友听到的内容
                           }
                    });

 

     服务器端:往频道1推消息

 goEasy.publish('channel1', '妹妹,我宣你!');

 

这里服务器端使用的是GoEasy的Java SDK, 如果你使用的是其他语言,则可以通过restful API来推送消息,一个url, POST 请求,三个参数,就可以轻松搞定!

如果大家有其他更好的选择,欢迎留言讨论!


 

5
5
分享到:
评论

相关推荐

    Web实时消息后台服务器推送技术GoEasy(支持多语言)---附GoEasy web 推送实例

    GoEasy是一个优秀的后台服务器推送技术,它支持多种编程语言,使得开发人员能够轻松地在他们的Web应用中实现双向通信功能。在本篇文章中,我们将深入探讨GoEasy的核心特性、工作原理以及如何使用GoEasy进行Web推送。...

    JAVA Web实时消息后台服务器推送技术---GoEasy

    GoEasy作为一个第三方推送服务平台,提供简单易用的API,帮助开发者快速集成实时推送功能。 GoEasy具有以下特性: 1. **浏览器兼容性**:GoEasy支持WebSocket和Polling两种连接方式,确保对所有主流浏览器的支持,...

    服务端推送到客户端-goeasy

    【服务端推送到客户端-goeasy】是一种技术实现方式,主要用于实现实时通信,使得服务器可以主动将数据发送到客户端,而不仅仅局限于客户端发起请求后服务器响应的传统HTTP模式。GoEasy是一个基于WebSocket协议的实时...

    goEasy消息推送

    GoEasy消息推送是一种高效、便捷的实时通信服务,主要用于实现Web端和手机端的消息推送功能。在现代互联网应用中,实现实时交互是提升用户体验的关键因素之一,而GoEasy则提供了一个简单易用的解决方案。 GoEasy的...

    GoEasy推送

    GoEasy是一款高效、稳定、易用的实时通讯云服务,主要提供消息推送功能,帮助企业或开发者快速构建实时交互系统。本文将围绕GoEasy推送服务,深入讲解如何利用Java、JavaScript等语言实现推送功能,以及如何理解和...

    Java实现GoEasy实时推送demo

    Java实现GoEasy实时推送Demo是将GoEasy的实时推送服务集成到Java Web应用程序中的一个示例项目。GoEasy是一款提供高效、稳定、易用的Websocket推送服务的平台,广泛应用于金融、教育、物联网等领域的实时数据交互。...

    goeasy开发相关jar包 简单demo

    `GoEasy`是一个实时推送服务,它允许开发者轻松地在Web应用中集成推送功能,而无需关心复杂的网络编程细节。`Spring`作为Java领域广泛使用的开源框架,为我们提供了丰富的功能来构建可维护、可扩展的系统。整合两者...

    GoEasy消息推送demo

    为了测试效果,大家可以多打开几个页面然后在推...另外大家也可以打开goeasy 官网上的chat demo页面来查看推送结果。(资料中的appkey用的是goeasy demo的key,在后续实现中,大家需要通过注册来获得属于自己的appkey)

    Uniapp使用GoEasy实现websocket实时通讯

    【标题】:“Uniapp使用GoEasy实现websocket实时通讯” 【描述】:本文主要探讨了如何在Uniapp项目中集成GoEasy服务,以实现基于websocket的实时通讯功能。Uniapp作为一个跨平台的开发框架,允许开发者编写一次代码...

    JAVA Web实时消息后台服务器推送技术—GoEasy

    越来越多的项目需要用到实时消息的推送与接收,我这里推荐大家使用GoEasy, 它是一款第三方推送服务平台,使用它的API可以轻松搞定实时推送! 浏览器兼容性:GoEasy推送 支持websocket 和polling两种连接方式,从而...

    goeasy-0.1.jar

    goeasy-0.1.jar

    goeasy客服代码.rar

    在信息技术领域,GoEasy是一个知名的实时通信云服务商,它提供了一整套简单易用的API和SDK,帮助企业快速构建实时的推送服务,实现消息的即时传递。本篇文章将深入探讨名为"GoEasy客服代码"的压缩包文件,通过解析...

    替代Websocket的解决方案:GoEasy.docx

    &lt;artifactId&gt;goeasy-sdk &lt;version&gt;0.3.3 ``` JS 推送: 使用 JavaScript 可以实现推送,需要在前台页面中添加 JavaScript 代码。 RestAPI 推送: 使用 RestAPI 可以实现推送,需要使用 PHP、.NET、Ruby 等语言...

    goeasy 工具包

    GoEasy是一个基于WebSocket协议的云推送服务,它简化了在Web和移动应用中实现实时通信的复杂性。开发者可以通过简单的API调用来实现服务器与客户端之间的双向通信,无需关注底层网络协议的实现。 2. **WebSocket...

    GoEasy RTC音视频通话

    GoEasy音视频实时通话(GoEasy Real-Time Communication,GRTC)旨在协助开发者轻松实现语音、视频实时通话功能,全面支持一对一和多人通话。 目前,GRTC仅支持Uniapp开发的APP中集成,尚不支持小程序、Web页面,...

    GoEasy小程序即时通讯源码 v1.1.0/基于GoEasy提供的websocket通讯服务

    GoEasy小程序即时通讯源码是一个基于GoEasy提供的websocket通讯服务 实现的小程序即时通讯,支持一对一单聊、群聊、会话列表、上下线提醒、 历史消息、离线消息,支持发送图片、视频、语音,更多功能可以下载下来...

    基于GoEasy实现小程序即时通讯源码

    GoEasy小程序即时通讯源码是一个基于GoEasy提供的websocket通讯服务,实现的小程序即时通讯,支持一对一单聊、群聊、会话列表、上下线提醒、历史消息、离线消息,支持发送图片、视频、语音,更多功能可以下载下来...

    【GoEasy小程序即时通讯源码 v1.1.0】基于GoEasy提供的websocket通讯服务

    GoEasy小程序即时通讯源码是一个基于GoEasy提供的websocket通讯服务,实现的小程序即时通讯,支持一对一单聊、群聊、会话列表、上下线提醒、历史消息、离线消息,支持发送图片、视频、语音,更多功能可以下载下来...

    websocket实时推送数据

    标题“WebSocket实时推送数据”指的是使用WebSocket技术实现实时数据从服务器推送到客户端的功能。在这个场景中,我们看到描述提到了基于Node.js的前端实现,这表明我们将讨论如何在Node.js环境中搭建WebSocket服务...

    亲测 目前最稳定的版本 小而美 GoEasy即时通讯小程序源码.zip

    GoEasy小程序即时通讯源码是一个基于GoEasy提供的websocket通讯服务,实现的小程序即时通讯, 支持一对一单聊、群聊、会话列表、上下线提醒、历史消息、离线消息,支持发送图片、视频、语音,更多功能可以下载下来...

Global site tag (gtag.js) - Google Analytics