# server **Repository Path**: heralink/server ## Basic Information - **Project Name**: server - **Description**: Heralink platform Go backend service - real-time communication SaaS - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-14 - **Last Updated**: 2026-07-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Heralink Server 高性能实时通信 SaaS 平台后端。提供单聊、群聊、房间通信、主题订阅、消息推送能力。 ## 技术栈 - Go 1.22+ - MySQL 8.0 + Redis 7 - HTTP / WebSocket / TCP 三服务器并行 ## 快速开始 ### 直接运行(本地开发) ```bash # 启动 MySQL/Redis docker-compose -f docker-compose.local.yml up -d # 启动服务 go run main.go ``` ### Docker 容器运行(推荐) 在 `platform/` 根目录使用 `dev-up.sh` 脚本: ```bash # 一键构建 + 启动/更新 bash dev-up.sh # 只编译后端,不构建前端 bash dev-up.sh server # 停止所有服务 bash dev-up.sh down ``` 脚本功能: - 检测 Go 源码变更 → 自动交叉编译 Linux amd64 → 重启容器(`--force-recreate`) - 检测 `manage`/`dev-console` 前端变更 → 自动构建 - 保存源码 hash,只编译有改动的模块,跳过无变更 ## 项目结构 | 目录/文件 | 说明 | |-----------|------| | [main.go](main.go) | 入口(启动 HTTP/WS/TCP 三服务器) | | [internal/](internal/) | 业务逻辑 | | [pkg/](pkg/) | 公共库 | | [config/](config/) | 配置文件 | | [docker/](docker/) | MySQL 初始化脚本、Nginx 配置 | | [docs/](docs/) | 架构、API、配置、开发文档 | | [scripts/](scripts/) | 启动/停止脚本 | | [docker-compose.yml](docker-compose.yml) | 全容器部署 | | [docker-compose.local.yml](docker-compose.local.yml) | 本地开发(仅 MySQL/Redis) | ## 消息通道 平台提供 HTTP、WebSocket 和 TCP 服务: - HTTP API:`8180` - WebSocket:`8181` - TCP:`8182` App Server 通过 HTTP API 将单聊、群聊、房间和主题消息转发到平台;平台负责向在线 WebSocket 用户推送。频道消息推送 payload 保留 `group_id`、`room_id` 或 `topic_id`,客户端据此区分个人消息和频道消息。 ## 构建 ```bash go test ./... go build -o heralink-server . ``` Linux 交叉编译: ```bash CGO_ENABLED=0 GOOS=linux go build -o heralink-server . ``` ## License MIT --- **作者**: yichen · **邮箱**: 2782268022@qq.com · **技术交流 Q 群**: 714566447