webSocket--服务器将数据主动推送给客户端

webSocket--服务器将数据主动推送给客户端,第1张

标签(空格分隔): js

WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。
WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在 WebSocket API 中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。
在 WebSocket API 中,浏览器和服务器只需要做一个握手的动作,然后,浏览器和服务器之间就形成了一条快速通道。两者之间就直接可以数据互相传送。
HTML5 定义的 WebSocket 协议,能更好的节省服务器资源和带宽,并且能够更实时地进行通讯。

简单的例子

接入他们第三方推送对服务器压力最小。开发者可以节省 90% 的成本,而用户在推送上每月平均只会花掉 08-12M 的流量,是个流量和耗电量都可控的推送。自主开发的推送在用户到达一定规模后容易让服务器面临不可控的压力,甚至崩溃。
第三方推送建议用极光推送,极光推送作为较成熟的推送平台,通过集成基础 *** 作。为客户端以及服务端节省了大量时间来实现推送效果。
极光推送优势如下:(1)用户注册数无限制;(2)推送速度:10万条/秒(共享)|| 20万条/秒(独享);(3)独立推送通道、公网推送加速方案;(4)724专人专线服务;(1)最大并发数无限制;(2)推送速度:20万条/秒(独享);(3)推送条数无限制;(4)用户可分群推送;(5)专向高速推送通道;(6)离线消息可保存条数50条;(7)VIP技术支持。(8)极光官网上的文档很全,并且有互动问答以及博客长文,但是个推官网上没有;
极光推送已经覆盖了近10亿Android、IOS终端,30多万款APP应用,服务总用户数超过30亿,每天消息推送量达5亿多条,已成为移动应用数据平台。

几种常见的解决方案实现原理
1)轮询(Pull)方式:客户端定时向服务器发送询问消息,一旦服务器有变化则立即同步消息。
2)SMS(Push)方式:通过拦截SMS消息并且解析消息内容来了解服务器的命令,但这种方式一般用户在经济上很难承受。
  3)持久连接(Push)方式:客户端和服务器之间建立长久连接,这样就可以实现消息的及时行和实时性。
3、消息推送解决方案概述
A、C2DM云端推送方案
在Android手机平台上,Google提供了C2DM(Cloudto Device Messaging)服务。Android
Cloud to Device Messaging (C2DM)是一个用来帮助开发者从服务器向Android应用程序发送数据的服务。该服务提供了一个简单的、轻量级的机制,允许服务器可以通知移动应用程序直接与服务器进行通信,以便于从服务器获取应用程序更新和用户数据。
该方案存在的主要问题是C2DM需要依赖于Google官方提供的C2DM服务器,由于国内的网络环境,这个服务经常不可用。
B、MQTT协议实现Android推送
采用MQTT协议实现Android推送功能也是一种解决方案。MQTT是一个轻量级的消息发布/订阅协议,它是实现基于手机客户端的消息推送服务器的理想解决方案。
wmqttjar
是IBM提供的MQTT协议的实现。我们可以从这里(>手机推送服务是指服务器定向将信息实时送达手机的服务。为了做好信息推送,同时不会让客户产生反感的情绪,应该注意如下几点:
1、选择合适的人群进行推送:消息推送的时候,将要推送的内容、封面、标题将这些都确定好了之后,再选择合适的人群进行推送,做好这一点其实是很有必要的。
2、适当的运用焦点强占形式:如无必要,不使用焦点强占形式的主动通知形式;如必须采用主动焦点强占形式的通知,则必须提供给用户自行关闭通知或降低通知强度的设置。
3、合理的推送周期:为周期性的和同类型的通知消息提供折叠或分组功能,每天的推送消息尽量不要超过2条,同类型的不要重复推送,而且也要注意好推送时间,如果是在大家休息的时间段,尽量不要推送。
4、智能个性化消息通知:这种类型的通知,用户一般都不会反感,还会觉得挺方便的。
5、掌握消息推送强度:尽量不要把消息通知的强度选择权交给用户。
关于手机推送服务也可以选择第三方工具来帮忙时效,比如极光推送就很不错。深圳市和讯华谷信息技术有限公司(极光 Aurora Mobile,纳斯达克股票代码:JG)成立于2011年,行业应用已经拓展至市场洞察、金融风控与商业地理服务,助力各行各业优化决策、提升效率。

通过客户端是嵌入式编程,通过自定义的tcp通信协议进行连接的,这样就可以实现消息推送。现在市面上的消息推送软件有很多,但是相比较来说,深圳极光的就不错,功能也是有很多的,具体功能如下:
1、智能触达精准广告,智能送达
能够实现更高效的流量变现服务;极光强大的数据处理能力,能够为更高效的流量变现保驾护航。
2、VaaS视频广告,高效转化
提高高用户活跃时长,能够帮助开发者构建用户兴趣标签,一举三得;赋能APP以算法、视频内容和视频广告能力,提高用户活跃时长同时,也能实现流量变现。
3、互动广告深度互动,前置体验
多样性不断更新的互动工具,以及更原生的适配媒体特性的有趣活动场景;兼顾流量变现与用户体验,可实现流量主、广告主和用户的多方共赢。
极光助力开发者提高用户活跃时长、增加用户粘性,提升用户价值,为开发者提供优质的广告变现服务。

楼上简直不懂装懂,AJAX技术虽然是异步请求,但还是请求,也是通过主动请求服务器主动接收服务器响应的,只是页面不刷新而已,根本不能实现完全的被动接收信息推送!
你可以结合AJAX与onkey()与setInterverl()方法实现间隔性请求,但这会给服务器造成崩溃的灾难!
正确的方法涉及到了侦听器, WebSocket ,内容过多,打字不易,还是不说了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10564567.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-09
下一篇 2023-05-09

发表评论

登录后才能评论

评论列表(0条)

保存