Voltar ao ranking

GoBelieveIO/im_service

Go

golang im server

golanggoimfree-softwareopen-sourceserverchatchat-applicationinstant-messagingmessagingmessaging-servicechat-server
Crescimento de estrelas
Estrelas
2k
Forks
605
Crescimento semanal
Issues
3
5001k1.5k
abr. de 2015jan. de 2019out. de 2022jul. de 2026
ArtefatosGo Modulesgo get github.com/GoBelieveIO/im_service
README

im service

  1. 支持点对点消息, 群组消息, 聊天室消息
  2. 支持集群部署
  3. 单机支持50w用户在线
  4. 单机处理消息5000条/s
  5. 支持超大群组(3000人)

服务器硬件指标:32g 16核

编译运行

  1. 安装go编译环境

    版本要求:支持module,高于v1.11 参考链接:https://golang.org/doc/install

  2. 下载im_service代码

    git clone https://github.com/GoBelieveIO/im_service.git

  3. 编译

    cd im_service

    mkdir bin

    make install

    可执行程序在bin目录下

  4. 安装mysql数据库, redis, 并导入db.sql

  5. 配置程序 配置项的说明参考ims.cfg.sample, imr.cfg.sample, im.cfg.sample

  6. 启动程序

  • 创建配置文件中配置的im&ims消息存放路径

    mkdir /tmp/im

    mkdir /tmp/impending

  • 创建日志文件路径

    mkdir /data/logs/ims

    mkdir /data/logs/imr

    mkdir /data/logs/im

  • 启动im服务

    pushd `dirname $0` > /dev/null

    BASEDIR=`pwd`

    nohup $BASEDIR/ims ims.cfg >/data/logs/ims/ims.err 2>&1 &

    nohup $BASEDIR/imr imr.cfg >/data/logs/imr/imr.err 2>&1 &

    nohup $BASEDIR/im im.cfg >/data/logs/im/im.err 2>&1 &

token的格式

连接im服务器token存储在redis的hash对象中,脱离API服务器测试时,可以手工生成。
$token就是客户端需要获得的, 用来连接im服务器的认证信息。
key:access_token_$token
field:
    user_id:用户id
    app_id:应用id

官方网站

https://developer.gobelieve.io/

相关产品

https://goubuli.mobi/

Repositórios relacionados
practical-tutorials/project-based-learning

Curated list of project-based tutorials

PythonPyPIMIT Licensetutorialproject
274.6k35.4k
avelino/awesome-go

A curated list of awesome Go frameworks, libraries and software

GoGo ModulesMIT Licensegolanggolang-library
awesome-go.com
178.8k13.4k
ollama/ollama

Get up and running with Kimi-K2.6, GLM-5.2, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other models.

GoGo ModulesMIT Licensellamallm
ollama.com
176.6k17.1k
golang/go

The Go programming language

GoGo ModulesBSD 3-Clause "New" or "Revised" Licenseprogramming-languagelanguage
go.dev
135.3k19.3k
caddyserver/caddy

Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS

GoGo ModulesApache License 2.0goweb-server
caddyserver.com
74.2k4.8k
unionlabs/union

The trust-minimized, zero-knowledge bridging protocol, designed for censorship resistance, extremely high security, and usage in decentralized finance.

Rustcrates.ioApache License 2.0blockchaincosmos
union.build
73.9k3.9k
moby/moby

The Moby Project - a collaborative project for the container ecosystem to assemble container-based systems

GoGo ModulesApache License 2.0dockercontainers
mobyproject.org
71.9k19k
nektos/act

Run your GitHub Actions locally 🚀

GoGo ModulesMIT Licensegithub-actionsgolang
nektosact.com
71.2k2k
traefik/traefik

The Cloud Native Application Proxy

GoGo ModulesMIT Licensemicroservicedocker
traefik.io
64.1k6.1k
santifer/career-ops

Open-source AI job search: scan job portals, evaluate listings with a structured A-F rubric into a 1.0-5.0 score, tailor your CV, track applications — runs locally in your AI coding CLI (Claude Code, Codex, OpenCode, Antigravity…)

JavaScriptnpmMIT Licenseai-agentanthropic
career-ops.org
60.9k12k
pocketbase/pocketbase

Open Source realtime backend in 1 file

GoGo ModulesMIT Licenseauthenticationbackend
pocketbase.io
60.1k3.6k
rclone/rclone

"rsync for cloud storage" - Google Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Wasabi, Google Cloud Storage, Azure Blob, Azure Files, Yandex Files

GoGo ModulesMIT Licensegolanggo
rclone.org
58.6k5.2k