使用 Proxmox 容器上的 NetData 监控软中断 RCU 的峰值

使用 Proxmox 容器上的 NetData 监控软中断 RCU 的峰值

我有一台具有以下特征的服务器:https://www.soyoustart.com/it/offerte/1801sysgame05.xml

处理器 Intel i7-4790K

内存 32GB DDR3 1333MHz

流量无限 包含反 DDoS

磁盘 1x240GB SSD

带宽 250 Mbps

我安装了 Proxmox Linux 发行版,它运行基于 Ubuntu 服务器的容器来处理用 C++ 编写的实时 TCP 游戏服务器,目前在线用户已达 1000 人左右,并且我们很快就会将当前用户数量翻一番。

问题是,一旦在线用户数量达到约 850 人,我们就会遇到奇怪的性能“瓶颈”。一旦它回到约 800 人或更少,瓶颈就会消失。实际情况是,玩家必须等待大约 30 秒才能连接到服务器,而已经连接的玩家没有遇到任何问题(没有延迟、没有冻结等)。这似乎是网络拥塞、上限限制或类似的东西,拒绝进一步连接到同一进程并对我们的 CPU 造成压力(如下面的屏幕截图所示)

这里我从我们的 NetData 收集了一些图表,我注意到了相同的“模式”。软中断 RCU我猜想是特别有意义的,但我不知道它到底意味着什么。

软中断 RCU: 图像

CPU 使用率/压力: 图像

CPU频率 图像

CPU温度

图像

我不认为错误在于我们的 CPU 本身,但如上所述,似乎与进程限制或类似的东西有关。

你知道发生什么事了吗?

更新:

另一张相关图表

图像

答案1

我通过增加 ulimit 解决了这个问题

在我的特定情况下,问题是必须增加 ulimit(硬限制和软限制),并在主机和 lxc 容器的 /etc/ 文件夹内永久配置。

另外,我将我的容器改为特权容器,但我不确定是否真的有必要,可能有办法为特权容器修复它,但我无法做到这一点。

相关内容