v2.0 — 全新插件化架构

轻量级即时通讯
私有化部署方案

基于 Node.js + WebSocket 构建,一套代码同时支持免费版单实例部署与专业版分布式集群。零依赖外部服务,开箱即用。

3K+
实测并发连接
800+
msg/s 吞吐
100%
消息送达率
0
外部依赖

功能完备的 IM 系统

从基础聊天到分布式集群,提供完整的即时通讯能力,满足从个人项目到企业级应用的全部需求。

实时消息

基于 WebSocket 的全双工通信,支持文本、图片消息类型,私聊与群聊全覆盖,消息实时送达零延迟。

群组管理

完整的群创建、成员管理、公告发布、管理员权限体系。支持群主/管理员/成员三级角色。

推送通知

基于 Web Push 标准的浏览器推送,离线消息不遗漏。支持免打扰模式与推送开关控制。

安全认证

JWT 无状态认证,bcrypt 密码加密。内置频率限制、输入校验、XSS 防护等多层安全机制。

跨端适配

前端基于 UniApp 构建,一套代码编译为 H5、微信小程序、App 等多端应用。

插件架构

存储层与消息层抽象为接口,SQLite / MySQL、Local / Redis 自由组合,按需扩展。

插件化分层设计

核心业务逻辑与基础设施完全解耦。存储层(Storage)和消息层(Messenger)通过接口抽象,实现运行时无缝切换。

  • 存储接口 — SQLite 或 MySQL,数据持久化策略自由选择
  • 消息接口 — Local 单机或 Redis Pub/Sub 跨实例广播
  • Go 网关 — WebSocket 代理 + 负载均衡 + 健康检查
  • 一套代码 — 环境变量驱动,构建时区分免费版与专业版
客户端层
UniApp H5 微信小程序 iOS / Android
接入层(专业版)
Go 网关 WebSocket 代理 负载均衡
服务层
Express REST API WebSocket Server Push Notification
插件层
SQLite MySQL Local Messenger Redis Messenger

三种交付形态,按需选择

免费版与专业版均为打包二进制交付,源码版提供完整代码与二次开发能力。

免费版

二进制单实例

pkg 打包的独立二进制,零依赖,一个文件即可运行。

  • SQLite 嵌入式存储
  • 本地消息路由
  • 单进程部署
  • 全功能 IM
  • 无需安装 Node.js
  • 不支持多实例
  • 不提供源码
专业版

二进制集群

Go 网关 + 多实例二进制,MySQL + Redis 分布式架构。

  • MySQL 共享存储
  • Redis 消息总线
  • Go 网关负载均衡
  • 多实例水平扩展
  • 健康检查自动摘除
  • 10,000+ 并发
  • 不提供源码
扫码关注刘大可公众号 扫码关注公众号获取
源码版

完整源码授权

交付全部源代码,支持二次开发、功能定制与深度集成。

  • 完整前后端源码
  • 插件架构全部源码
  • Go 网关源码
  • UniApp 前端源码
  • 可自由修改扩展
  • 部署文档与指导
  • 技术答疑支持
扫码关注刘大可公众号 扫码关注公众号获取

三种方式,快速上手

免费版与专业版下载即用,源码版 clone 后一键构建。

免费版 — 二进制部署
# 下载二进制文件 wget /downloads/free/im-server # 赋予执行权限 chmod +x im-server # 直接运行,零依赖 ./im-server # 服务已启动 :3000 # SQLite 自动创建 # 无需安装 Node.js
专业版 — 集群部署
# 启动多个 IM 实例 ./im-server-pro --port 3000 & ./im-server-pro --port 3001 & ./im-server-pro --port 3002 & # 启动 Go 网关 ./im-gateway # 网关 :8080 自动负载均衡 # MySQL + Redis 自动连接 # 健康检查自动摘除故障节点
源码版 — 二次开发
# 获取源码 git clone repo_url im-system cd im-system/server # 安装依赖 & 启动开发 npm install npm run dev # 构建生产二进制 npm run build:free:linux npm run build:pro:linux # 自定义功能后重新打包即可

成熟可靠的技术选型

每一个组件都经过生产验证,稳定、高效、社区活跃。

Node.js
运行时环境
Express
REST API 框架
WebSocket
实时通信 (ws)
SQLite
免费版存储 (sql.js)
MySQL
专业版存储
Redis
消息总线 (Pub/Sub)
Go
WebSocket 网关
UniApp
跨端前端框架

经得起考验的承载能力

基于真实压测数据,免费版 SQLite 单实例 vs 专业版 MySQL + Redis 集群,帮你选择最合适的部署方案。

免费版 · SQLite 单实例
最大并发 WebSocket 连接
3,000
消息发送 QPS
822 msg/s
消息送达率 (ACK)
100%
平均消息延迟
8.5 ms
P99 消息延迟
20 ms
3000 连接建立耗时
365 ms
每千连接内存占用
~25 MB
专业版 · 3 节点集群 (MySQL + Redis)
集群并发连接(可扩展)
10,000+
集群聚合 QPS
2,200+ msg/s
消息送达率
100%
单节点平均延迟
78 ms
跨节点 P99 延迟
383 ms
群聊扇出系数
42x
高可用 · 水平扩展
线性 · 无上限
按用户规模选购服务器
用户规模 在线峰值 服务器配置 带宽 推荐版本 月成本参考
50 人以下
个人 / 小团队
~10 轻量云 2 核 2G 3 Mbps 免费版 ~50 元
200 人
创业团队
~50 云服务器 2 核 4G 5 Mbps 免费版 ~100 元
500 人
中型企业
~150 云服务器 4 核 4G 10 Mbps 免费版 ~200 元
1,000 人
大型企业
~300 云服务器 4 核 8G 20 Mbps 免费版 ~350 元
3,000 人
集团 / 园区
~1,000 云服务器 8 核 8G 50 Mbps 专业版 ~800 元
10,000 人
大规模部署
~3,000 3 节点集群 4C8G ×3
+ MySQL + Redis 各 4G
100 Mbps
或内网互联
专业版 ~3,000 元
50,000+ 人
平台级 / SaaS
~15,000 5+ 节点集群 8C16G
+ MySQL 主从 + Redis 集群
1 Gbps
+ 负载均衡
专业版 ~10,000+ 元
选型建议:3,000 人以内推荐免费版单实例部署,零依赖开箱即用;超过 3,000 人或需要高可用时选专业版集群。带宽计算基于每条消息约 300~500 字节 JSON,峰值在线约占注册用户 30%。月成本参考国内主流云厂商(阿里云 / 腾讯云)按量价格,实际以供应商报价为准。

开始构建你的即时通讯服务

从免费版开始,按需扩展到分布式集群。完全私有化部署,数据尽在掌握。