用途
- 搞活动、年会的时候,在大屏幕上实时显示留言、吐槽。
- 在视频网站上,将大家的吐槽实时展示出来。
- …
原理
其他原理挺简单的,就是将大家的留言实时展示出来。
注意点:实时性、动画效果、数据存储。
实时性
首先我们会想到,Ajax轮循 简单,粗暴。
客户端和服务器之间会一直进行连接,每隔一段时间就询问一次。
客户端会轮询,判断有没有新消息。
这种方式连接数会很多,一个接受,一个发送。
而且每次发送请求都会有Http的Header,会很耗流量,也会消耗CPU的利用率。
所以,这个方案是不可取的。
可以通过长连接,socket.io
来实现。
Socket.IO 官方地址:http://socket.io/
Socket.IO 支持 WebSocket
协议、用于实时通信和跨平台的框架。
Socket.IO 设计的目标是构建能够在不同浏览器和移动设备上良好运行的实时应用。
如实时分析系统、二进制流数据处理应用、在线聊天室、在线客服系统、评论系统、WebIM等。
目前,Socket.IO 已经支持主流PC浏览器(IE、Safari、Chrome、Firefox、Opera等)。
移动平台上的浏览器(iOS平台下的Safari、Android平台下的基于Webkit的浏览器等)。
Socket.IO 实现了实时、双向、基于事件的通讯机制,它解决了实时的通信问题,并统一了服务端与客户端的编程方式。
启动了Socket以后,就像建立了一条客户端与服务端的管道,两边可以信息互通。
利用Socket.IO 与 Workerman 结合 ,双剑合璧。
Workerman 官方地址:http://www.workerman.net/
动画效果
CommentCoreLibrary
http://jabbany.github.io/CommentCoreLibrary/demo/
GoEasy
http://goeasy.io/www/demo/barrage
jquery.barrager.js
Jquery.barrager.js 是一款优雅的网页弹幕插件,支持显示图片,文字以及超链接。
支持速度、高度、颜色、数量等自定义
链接:http://yaseng.org/jquery.barrager.js/
大家可以浏览上面提供的Demo,根据自己的实际需求进行修改,优化。
数据存储
切记不要每次发送数据的时候实时插入的数据库中,可以利用异步处理。
首先将数据存储到缓存中,异步将缓存的数据同步到数据库中。
效果图的实现方法:
Socket.IO + Workerman + jquery.barrager.js
1、本站所有资源均从互联网上收集整理而来,仅供学习交流之用,因此不包含技术服务请大家谅解!
2、本站不提供任何实质性的付费和支付资源,所有需要积分下载的资源均为网站运营赞助费用或者线下劳务费用!
3、本站所有资源仅用于学习及研究使用,您必须在下载后的24小时内删除所下载资源,切勿用于商业用途,否则由此引发的法律纠纷及连带责任本站和发布者概不承担!
4、本站站内提供的所有可下载资源,本站保证未做任何负面改动(不包含修复bug和完善功能等正面优化或二次开发),但本站不保证资源的准确性、安全性和完整性,用户下载后自行斟酌,我们以交流学习为目的,并不是所有的源码都100%无错或无bug!如有链接无法下载、失效或广告,请联系客服处理!
5、本站资源除标明原创外均来自网络整理,版权归原作者或本站特约原创作者所有,如侵犯到您的合法权益,请立即告知本站,本站将及时予与删除并致以最深的歉意!
6、如果您也有好的资源或教程,您可以投稿发布,成功分享后有站币奖励和额外收入!
7、如果您喜欢该资源,请支持官方正版资源,以得到更好的正版服务!
8、请您认真阅读上述内容,注册本站用户或下载本站资源即您同意上述内容!
原文链接:https://www.shuli.cc/?p=18126,转载请注明出处。
评论0