共计 1869 个字符,预计需要花费 5 分钟才能阅读完成。
写在后面
Open-IM 是由前微信技术专家打造的 开源 的即时通讯组件。Open-IM 包含 IM 服务端和客户端 SDK,实现了高性能、轻量级、易扩大等重要个性。开发者通过集成 Open-IM 组件,并私有化部署服务端,能够将即时通讯、实时网络能力疾速集成到本身利用中,并确保业务数据的安全性和私密性。
开创团队来自前微信高级架构师、IM/WebRTC 专家团队,咱们致力于用开源技术发明服务价值,打造轻量级、高可用的 IM 架构,开发者只需简略调用 SDK,即可在利用内构建多种即时通讯及实时音视频互动场景。
IM 作为外围业务数据,平安的重要性毋庸置疑,OpenIM 开源以及私有化部署让企业能更放心使用。
现在 IM 云服务商免费高企,如何让企业低成本、平安、牢靠接入 IM 服务,是 OpenIM 的历史使命,也是咱们后退的方向。
理解更多原创文章:
【OpenIM 原创】开源 OpenIM:轻量、高效、实时、牢靠、低成本的音讯模型
【OpenIM 原创】C/C++ 调用 golang 函数,golang 回调 C /C++ 函数
【OpenIM 原创】简略轻松入门 一文解说 WebRTC 实现 1 对 1 音视频通信原理
【OpenIM 扩大】OpenIM 服务发现和负载平衡 golang 插件:gRPC 接入 etcdv3
【开源 OpenIM】高性能、可伸缩、易扩大的即时通讯架构
如果您有趣味能够在文章结尾理解到更多对于咱们的信息,期待着与您的交换单干。
1. 克隆
git clone https://github.com/OpenIMSDK/Open-IM-Server.git
2. 装置
cd Open-IM-Server
docker-compose pull
3. 启动
docker-compose up
4. 查看
docker-compose ps
如图所示,示意失常启动。
源码部署
装置组件
Open-IM-Server 依赖五大开源组件:Etcd、MySQL、MongoDB、Redis、Kafka,在应用源码部署 Open-IM-Server 前,请确保五大组件已装置。如果没有装置以上组件,倡议应用上文的 docker 部署。
1. 克隆我的项目
git clone https://github.com/OpenIMSDK/Open-IM-Server.git
2. 批改 config.yaml,配置五大组件的连贯参数
cd Open-IM-Server
vim config.yaml
- 批改 Etcd 配置项
etcd:
etcdAddr: [127.0.0.1:2379]
- 批改 MySQL 配置项
mysql:
dbAddress: [127.0.0.1:3306]
dbUserName: root
dbPassword: openIM
- 批改 MongoDB 配置项
mongo: dbAddress: [127.0.0.1:27017] dbUserName: dbPassword:
- 批改 Redis 配置项
redis: dbAddress: [127.0.0.1:6379] dbPassWord: openIM
- 批改 Kafka 配置项
kafka: ws2mschat: addr: [127.0.0.1:9092] ms2pschat: addr: [127.0.0.1:9092]
保留 config.yaml 退出即可。
每种 RPC 数量默认为 1,如果须要调整 RPC 数量,批改 config.yaml 中的配置项 rpcport 对应的 port 信息,port 个数代表对应 rpc 服务的过程数。比方 openImUserPort: [10100,10101]示意本机会启动两个 open_im_user,port 别离为 10100,10101
3. 构建
cd Open-IM-server/scriptchmod +x *.sh./build_all_service.sh
4. 启动
./start_all.sh
5. 查看
./check_all.sh
如图所示,示意失常启动。
集群部署(源码)
本大节次要解说通过源码形式如何部署 Open-IM-Server 集群
(1)在集群的每台机器(比方 A、B 两台机器)上执行源码部署。
(2)A、B 机器都提供了 IM 能力,在 nginx 做一个路由转发即可。
OpenIM github 开源地址:
https://github.com/OpenIMSDK/…
OpenIM 官网:https://www.rentsoft.cn
OpenIM 官方论坛:https://forum.rentsoft.cn/
咱们致力于通过开源模式,为寰球企业 / 开发者提供简略、易用、高效的 IM 服务和实时音视频通信能力,帮忙开发者升高我的项目的开发成本,并让开发者掌控业务的外围数据。