openimsdk/open-im-server
GitHub: openimsdk/open-im-server
开源即时通讯服务端,帮助开发者快速集成聊天功能到自己的应用中。
Stars: 15818 | Forks: 2802
[](https://github.com/openimsdk/open-im-server/stargazers)
[](https://github.com/openimsdk/open-im-server/network/members)
[](https://app.codecov.io/gh/openimsdk/open-im-server)
[](https://goreportcard.com/report/github.com/openimsdk/open-im-server)
[](https://pkg.go.dev/github.com/openimsdk/open-im-server/v3)
[](https://github.com/openimsdk/open-im-server/blob/main/LICENSE)
[](https://join.slack.com/t/openimsdk/shared_invite/zt-2ijy1ys1f-O0aEDCr7ExRZ7mwsHAVg9A)
[](https://www.bestpractices.dev/projects/8045)
[](https://github.com/openimsdk/open-im-server/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3A%22good+first+issue%22)
[](https://golang.org/)
[](https://gurubase.io/g/openim)
## Ⓜ️ 关于 OpenIM
与 Telegram、Signal 和 Rocket.Chat 等独立聊天应用不同,OpenIM 提供了一种开源即时通讯解决方案,专为开发者设计,而非直接作为独立安装的聊天应用。它由 OpenIM SDK 和 OpenIM Server 组成,为开发者提供了一套完整的工具和服务,以便将即时通讯功能集成到他们的应用中,包括消息发送和接收、用户管理以及群组管理。总体而言,OpenIM 旨在为开发者提供必要的工具和框架,以便在其应用中实现高效的即时通讯解决方案。

## 🚀 OpenIMSDK 介绍
**OpenIMSDK** 专为 **OpenIMServer** 设计,是一个专门用于集成到客户端应用的 IM SDK。它支持各种功能和模块:
- 🌟 主要特性:
- 📦 本地存储
- 🔔 监听器回调
- 🛡️ API 封装
- 🌐 连接管理
- 📚 主要模块:
1. 🚀 初始化与登录
2. 👤 用户管理
3. 👫 好友管理
4. 🤖 群组功能
5. 💬 会话处理
采用 Golang 构建,支持跨平台部署,以确保在所有平台上获得一致的集成体验。
👉 **[探索 GO SDK](https://github.com/openimsdk/openim-sdk-core)**
## 🌐 OpenIMServer 介绍
- **OpenIMServer** 的特性包括:
- 🌐 微服务架构:支持集群模式,包含网关和多个 RPC 服务。
- 🚀 多样化部署选项:支持源代码、Kubernetes 或 Docker 部署。
- 海量用户支持:支持十万级大群、百万级用户以及十亿级消息。
### 增强的业务功能:
- **REST API**:为业务系统提供 REST API 以增强功能,例如通过后台接口进行群组创建和消息推送。
- **Webhooks**:通过回调扩展业务形式,在特定事件之前或之后向业务服务器发送请求。

## :rocket: 快速开始
在线体验 iOS/Android/H5/PC/Web:
👉 **[OpenIM 在线演示](https://www.openim.io/en/commercial)**
为了提升用户体验,我们提供了多种部署方案。您可以从下方列表中选择您偏好的部署方式:
- **[源代码部署指南](https://docs.openim.io/guides/gettingStarted/imSourceCodeDeployment)**
- **[Docker 部署指南](https://docs.openim.io/guides/gettingStarted/dockerCompose)**
## 系统支持
支持 Linux、Windows、Mac 系统以及 ARM 和 AMD CPU 架构。
## :link: 链接
- **[开发者手册](https://docs.openim.io/)**
- **[更新日志](https://github.com/openimsdk/open-im-server/blob/main/CHANGELOG.md)**
## :closed_book: 许可证
本软件基于 Apache License 2.0 授权
## 🔮 感谢我们的贡献者!
English · 中文 · Українська · Česky · Magyar · Español · فارسی · Français · Deutsch · Polski · Indonesian · Suomi · മലയാളം · 日本語 · Nederlands · Italiano · Русский · Português (Brasil) · Esperanto · 한국어 · العربي · Tiếng Việt · Dansk · Ελληνικά · Türkçe
标签:Go语言, IM系统, NIDS, OpenIM, Python工具, RPC, Slack替代, WebSocket, 企业协同, 依赖分析, 分布式系统, 单聊群聊, 即时通讯, 后端开发, 响应大小分析, 子域名突变, 实时通信, 容器化, 开源IM, 微服务架构, 日志审计, 消息推送, 社交平台, 私有化部署, 程序破解, 网络测绘, 聊天室, 聊天服务器, 请求拦截, 防御规避, 高并发