基于netty实现socketio的聊天室

        目前公司业务上,有课程直播这一块。为了增加用户的互动,需要增加聊天室功能。聊天室,对实时性有较严格的要求,所以考虑使用socketio来做。目前在服务端,有基于netty实现的websocketio的框架。https://github.com/mrniko/netty-socketio,这个作者还是挺厉害的(redisson的作者)。

       一般的聊天室架构图是这样的:


服务端准备:

1 聊天室的创建,销毁

当老师有直播请求的时候,同时,需要通知后台服务创建一个聊天室的监听广播。


当直播结束,通知后台关闭聊天室


2 用户信息发送的广播

监听用户发送message的事件,广播消息。


客户端准备:

1 socketio请求发送事件包socket.io.js

2DEMO页面准备

1 初始化聊天室


2监听创建事件


3 发送创建事件


4 创建一个名称为chat2的聊天室


5 初始化创建好的聊天室


6 监听聊天事件


7 发送聊天信息事件


8开始聊天


这样,一个简陋的聊天室就成形了,接下来还要考虑聊天消息的分布式存储。好消息是,他已经提供了相应的接口集成,支持redisson,hazelcast.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,332评论 25 709
  • 作者:詹聪聪 序言: 本人工作中需要用到flask-socketio,在学习英文文档时发现,flask-socke...
    Python中文社区阅读 14,376评论 6 39
  • 点击查看原文 Web SDK 开发手册 SDK 概述 网易云信 SDK 为 Web 应用提供一个完善的 IM 系统...
    layjoy阅读 14,767评论 0 15
  • 我在这里 我在这里 在即将消失的地平线附近 在低空滑过的飞鸟附近 在苍白如你的雏菊盛开之地 我知道的 你知道的 来...
    百鬼夜行er阅读 1,463评论 0 1
  • 我之初读感: 读颜氏祭侄文稿:1、整篇粗细、浓淡,文中的空白随性却不乱,恰到好处的使人觉得文意悲愤哀伤,但不至于闷...
    常妙阅读 2,944评论 0 1

友情链接更多精彩内容