部署方式选择
Docker 部署(推荐)
推荐方式,简单快捷,支持单节点和集群部署
Linux 部署
直接部署,性能最优,适合对性能要求极高的场景
Kubernetes 部署(beta)
云原生部署,自动化运维,适合大规模生产环境
常见问题
1. 选择单机部署还是集群部署?
单机部署: WuKongIM的单机可以很容易的扩容成集群,所以单机部署也是一种选择。 优点:部署简单,性能较好,支持在线扩容。 缺点:无法容灾,需要手动备份。 适用场景:小型应用,对数据安全要求不高的应用,后续量大可以扩容成集群。 集群部署: 优点:高可用,容灾性强,支持在线扩容,多副本之间实时自动备份,负载均衡等。 缺点:需要多台机器。 适用场景:对数据安全要求高的应用,大型应用。2. 日活用户大概40万以下,需要什么部署方案和服务器配置?
40万以下的日活用户,建议单机部署,单机部署的服务器配置建议:- CPU:4核(或2核)
- 内存:16G(或8G)
- 硬盘:SSD
- 机器数量:3台
- CPU:4核
- 内存:16G
- 硬盘:SSD
3. 日活用户大概100万以上,需要什么部署方案和服务器配置?
100万以上的日活用户,毫无疑问集群部署,可以先部署三台机器看是否能支撑,如果不能支撑加入新节点即可(新节点加入的方式非常简单。),集群模式理论上对日活无上限,只要机器足够多。 初始三节点三副本部署的服务器配置建议:- 机器数量:3台
- CPU:4核
- 内存:16G
- 硬盘:SSD
4. 支持跨国部署吗?
目前不支持跨国部署数据节点,但是支持跨国部署代理节点,代理节点可以部署在任何地方,只要能访问到数据节点即可。 各国用户可以长连接到最近的代理节点,代理节点会自动转发请求到最近的数据节点,保证最低延迟。部署方式对比
| 特性 | Docker 部署 | Kubernetes 部署 | Linux 部署 |
|---|---|---|---|
| 部署难度 | 简单 | 中等 | 简单 |
| 运维复杂度 | 低 | 中等 | 低 |
| 性能 | 良好 | 良好 | 最优 |
| 扩展性 | 良好 | 优秀 | 良好 |
| 资源占用 | 中等 | 较高 | 最低 |
| 适用场景 | 中小型应用 | 大型云原生应用 | 性能敏感应用 |
端口说明
| 端口 | 协议 | 用途 | 访问范围 |
|---|---|---|---|
| 5001 | HTTP | API 服务 | 内网 |
| 5100 | TCP | 客户端连接 | 公网 |
| 5200 | TCP | WebSocket 连接 | 公网 |
| 5300 | HTTP | 管理界面 | 公网/内网 |
| 5172 | HTTP | 演示界面 | 公网/内网 |
| 11110 | TCP | 集群通信 | 内网 |
选择建议
新手用户
推荐使用 Docker 单节点部署:- 部署简单,快速上手
- 后续可以轻松扩容到集群
- 适合学习和小型项目
生产环境
推荐使用 Docker 集群部署 或 Kubernetes 部署:- 高可用性和容灾能力
- 自动化运维
- 适合大规模生产应用
性能敏感场景
推荐使用 Linux 直接部署:- 性能最优,资源占用最少
- 适合对性能要求极高的场景
- 需要一定的 Linux 运维经验

