HelpChat Server 服务端 性能优化
了解高并发架构原理,调整 worker 并发数以及开启 TCP Fast Open。
一、高并发原理
服务端安装根目录下有四个核心文件:
| 进程 | 职责 | 架构 |
|---|---|---|
| hcdata | 数据服务器(文件、云盘、图片等大块数据收发) | 多进程架构 |
| hckernel | 核心消息服务器(消息收发、在线状态维护) | 多线程架构 |
| hclogin | 登录服务器(登录、注册服务) | 多进程架构 |
| hcadmin | Web 管理后台(与性能无关) | — |
多进程架构:将同一进程运行指定数量的副本,同时负责高并发任务。多线程架构:在一个进程中运行指定数量的工作线程,接管所有高并发任务。
二、查看推荐并发数
三个性能相关进程的默认并发数是 8。在高性能服务器中可能不够。使用 -worker 参数可查看推荐值:
bash
./hckernel -worker 例如 i9 CPU 有 16 个逻辑处理器,推荐的并发数是 8 至 16。
修改并发数
打开服务端安装目录下 config/server.ini 文件,修改以下数字并保存:
config/server.ini
[worker]
hclogin = 8
hckernel = 8
hcdata = 8 请基于 CPU 内核数、内存大小、在线人数、大文件收发频率等因素给出合理的并发数。修改后重启所有后台服务即可。
三、Linux 服务器 打开 TCP Fast Open
Linux 系统打开 TCP Fast Open,可提升 10%~25% 网络连接速度,加快图片显示和文件下载:
bash
echo 3 > /proc/sys/net/ipv4/tcp_fastopen 永久生效,编辑 /etc/sysctl.conf,添加:
ini
net.ipv4.tcp_fastopen = 3 提示
修改 sysctl.conf 后,运行
sysctl -p 即可立即生效,无需重启。