基于Netty,ZooKeeper和Redis的分布式IM。持续学习持续更新...
客户端与服务端的连接,通过路由端选择可用服务端节点服务端启动后,向ZooKeeper注册客户端发送消息通过路由端,选择对应的服务端进行推送消息
- 客户端服务端连接
- 客户端处理用户输入消息及系统指令
- Google Protocol 消息序列化
- 服务端向路由注册
- 路由端获取可用服务端节点
- 消息群发功能
- 消息私发功能
- 客户端退出系统
- 客户端下线(可以使用系统命令直接重新登录)
- 服务端断线,客户端重连
- 心跳
- 通讯信息存储
- 客户端离线消息
1.启动Redis与Zookeeper
2.启动路由
yim-route
3.启动服务端
yim-server(本地下打jar包运行指定port,或者直接先启动一个然后改一下端口号再启动)
4.启动客户端
yim-client(本地下打jar包运行指定port,userId,username,或者直接先启动一个然后改一下端口号以及userId和username再启动)
参考资料:https://crossoverjie.top/2019/01/02/netty/cim01-started/