基于Netty实现的WebSocket聊天室,实现的功能如下:
The WebSocket chat room based on Netty is implemented as follows:
- 支持登录
- 支持多人同时在线
- 同步显示在线人数
- 支持文字和表情的内容
- 浏览器与服务器保持长连接,定时心跳检测
- 支持群聊
- 支持单聊
- 支持接收离线消息
- 能无缝切换内存数组、rabbitmq、activemq、rocketmq四种不同方法来存储和转发聊天消息
服务端:
- 建立数据库nettychat,导入netty-chat\docs\sql\nettychat.sql文件入数据库
- 在文件netty-chat\src\main\resources\application.properties中修改数据库连接信息
- 运行包目录com.shuangyueliao.chat下的类HappyChatSpringBootMain的main方法 (默认用内存数组存放和转发聊天信息,如需切换使用中间件rabbitmq、activemq或rocketmq,则先启动相应的中间件,然后在类HappyChatSpringBootMain上关闭注解@EnableCustomChat,然后打开相应注释(rabbitmq对应注解@EnableRabbitmqChat、rocketmq对应@EnableRocketmqChat、activemq对应@EnableActivemqChat)