HelpChat Server 服务端 性能优化

了解高并发架构原理,调整 worker 并发数以及开启 TCP Fast Open。

一、高并发原理

服务端安装根目录下有四个核心文件:

进程职责架构
hcdata数据服务器(文件、云盘、图片等大块数据收发)多进程架构
hckernel核心消息服务器(消息收发、在线状态维护)多线程架构
hclogin登录服务器(登录、注册服务)多进程架构
hcadminWeb 管理后台(与性能无关)—

多进程架构:将同一进程运行指定数量的副本,同时负责高并发任务。多线程架构:在一个进程中运行指定数量的工作线程,接管所有高并发任务。

二、查看推荐并发数

三个性能相关进程的默认并发数是 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 即可立即生效,无需重启。