正在显示
2 个修改的文件
包含
59 行增加
和
1 行删除
| @@ -24,7 +24,8 @@ | @@ -24,7 +24,8 @@ | ||
| 24 | - 适用于 `APP` 的消息推送中间件。 | 24 | - 适用于 `APP` 的消息推送中间件。 |
| 25 | - `IOT` 海量连接场景中的消息透传中间件。 | 25 | - `IOT` 海量连接场景中的消息透传中间件。 |
| 26 | 26 | ||
| 27 | -> 老版本已经归档到[这里](https://github.com/crossoverJie/cim/releases/tag/archive-20181227)。 | 27 | +> 点击下图可以查看视频版 Demo。 |
| 28 | + | ||
| 28 | 29 | ||
| 29 | ### cim-server | 30 | ### cim-server |
| 30 | 31 | ||
| @@ -49,6 +50,7 @@ | @@ -49,6 +50,7 @@ | ||
| 49 | * [x] 内置命令。 | 50 | * [x] 内置命令。 |
| 50 | * [x] 使用 `Google Protocol Buffer` 高效编解码。 | 51 | * [x] 使用 `Google Protocol Buffer` 高效编解码。 |
| 51 | * [x] 根据实际情况灵活的水平扩容、缩容。 | 52 | * [x] 根据实际情况灵活的水平扩容、缩容。 |
| 53 | +* [x] 路由(`cim-forward-route`)服务器自身是无状态,可用 `Nginx` 代理支持高可用。 | ||
| 52 | * [ ] 协议支持消息加密。 | 54 | * [ ] 协议支持消息加密。 |
| 53 | * [ ] 弱网情况下客户端自动上线。 | 55 | * [ ] 弱网情况下客户端自动上线。 |
| 54 | * [ ] 更多的客户端路由策略。 | 56 | * [ ] 更多的客户端路由策略。 |
| @@ -74,6 +76,62 @@ | @@ -74,6 +76,62 @@ | ||
| 74 | - 客户端下线时通过 `route` 清除状态信息。 | 76 | - 客户端下线时通过 `route` 清除状态信息。 |
| 75 | 77 | ||
| 76 | 78 | ||
| 79 | +## 快速启动 | ||
| 80 | + | ||
| 81 | +首先需要安装 `Zookeeper、Redis` 并保证网络通畅。 | ||
| 82 | + | ||
| 83 | +```shell | ||
| 84 | +git clone https://github.com/crossoverJie/cim.git | ||
| 85 | +cd cim | ||
| 86 | +mvn -Dmaven.test.skip=true clean package | ||
| 87 | +``` | ||
| 88 | + | ||
| 89 | +### 部署 IM-server(cim-server) | ||
| 90 | + | ||
| 91 | +```shell | ||
| 92 | +cp /cim/cim-server/target/cim-server-1.0.0-SNAPSHOT.jar /xx/work/server0/ | ||
| 93 | +cd /xx/work/server0/ | ||
| 94 | +nohup java -jar /root/work/server/cim-server-1.0.0-SNAPSHOT.jar --cim.server.port=9000 --app.zk.addr=zk地址 > /root/work/server/log.file 2>&1 & | ||
| 95 | +``` | ||
| 96 | + | ||
| 97 | +> cim-server 集群部署同理,只要保证 Zookeeper 地址相同即可。 | ||
| 98 | + | ||
| 99 | +### 部署路由服务器(cim-forward-route) | ||
| 100 | + | ||
| 101 | +```shell | ||
| 102 | +cp /cim/cim-server/cim-forward-route/target/cim-forward-route-1.0.0-SNAPSHOT.jar /xx/work/route0/ | ||
| 103 | +cd /xx/work/route0/ | ||
| 104 | +nohup java -jar /root/work/route/cim-forward-route-1.0.0-SNAPSHOT.jar --app.zk.addr=zk地址 --spring.redis.host=redis地址 > /root/work/route/log.file 2>&1 & | ||
| 105 | +``` | ||
| 106 | + | ||
| 107 | +> cim-forward-route 本身就是无状态,可以部署多台;使用 Nginx 代理即可。 | ||
| 108 | + | ||
| 109 | + | ||
| 110 | +### 启动客户端 | ||
| 111 | + | ||
| 112 | +```shell | ||
| 113 | +cp /cim/cim-client/target/cim-client-1.0.0-SNAPSHOT.jar /xx/work/route0/ | ||
| 114 | +cd /xx/work/route0/ | ||
| 115 | +java -jar cim-client-1.0.0-SNAPSHOT.jar --server.port=8084 --cim.user.id=唯一客户端ID --cim.user.userName=用户名 --cim.group.route.request.url=http://路由服务器:8083/groupRoute --cim.server.route.request.url=http://路由服务器:8083/login | ||
| 116 | +``` | ||
| 117 | + | ||
| 118 | + | ||
| 119 | + | ||
| 120 | + | ||
| 121 | +如上图,启动两个客户端可以互相通信即可。 | ||
| 122 | + | ||
| 123 | + | ||
| 124 | + | ||
| 125 | +## 客户端内置命令 | ||
| 126 | + | ||
| 127 | +| 命令 | 描述| | ||
| 128 | +| ------ | ------ | | ||
| 129 | +| `:q` | 退出客户端| | ||
| 130 | +| `:olu` | 获取所有在线用户信息 | | ||
| 131 | +| `:all` | 获取所有命令 | | ||
| 132 | +| `:` | 更多命令真正开发中。。 | | ||
| 133 | + | ||
| 134 | + | ||
| 77 | 135 | ||
| 78 | # 联系作者 | 136 | # 联系作者 |
| 79 | - [crossoverJie@gmail.com](mailto:crossoverJie@gmail.com) | 137 | - [crossoverJie@gmail.com](mailto:crossoverJie@gmail.com) |
pic/innercommand.gif
0 → 100644
1.5 MB
-
请 注册 或 登录 后发表评论