如何保证VPS的CPU时间?

我提供VPS和处女Debian它经常挂起:简单的ssh命令响应太久。 这是坏的 :(

我做了基准:每2分钟开始ffmpeg转换30秒低质量video。 通常需要3秒,但在挂机时间约20秒。

基准ffmpeg

另外我每隔2分钟就打VPS。 图表是一样的。

performance良好的时间间隔约为15分钟,差25分钟左右 平时间

您可以使用https://docs.google.com/spreadsheets/d/1XYQV-5mompcFidOHL7XzbvvrVnjn_ZHnvBaND6RrrVY/edit?usp=sharing

另一台服务器从这个主机

同样的情况,但不要批评

在这里输入图像说明

在这里输入图像说明

如何避免这种情况?

似乎,在同一个专用服务器上托pipe的neigbour VPS会定期启动高CPU加载任务。 也许这是系统备份或相同的任务。 据我所知,内存是有保证的,但不是CPU。

另外我从这个主机上有另一个VPS,它似乎没问题(它也有相同的峰值,但远远less于)

专用服务器对于这个项目来说太贵了。

这是主机托pipe的情况,更换提供的是坏主意

通常情况下,你得到你所支付的东西,而相对便宜的托pipe服务提供商只能通过多次过度使用CPU来提供他们的服务,例如,在具有48个内核和128GB内存的服务器上,他们可以尝试托pipe100个以上的1核/ 1GB内存VPS实例。 只要大多数VPS大多处于空闲状态,那么当运行的CPU负载过多时就会崩溃。

Linux内核实际上有一个专门的计数器,显示是否正在发生,“CPU窃取时间”计数器显示为%st频率。 你可能应该开始监视你的VPS。

CPU窃取时间是一个无意中等待的地方,你的VPS正在尝试运行某些东西,但是pipe理程序不会将所请求的CPU周期分配给您的VPS,而是分配给相邻VPS中也在竞争CPU时间的一个CPU周期。

你可以做什么来减轻这一点是:

  • 花更多的钱,去一个不会过分的提供商,这将为您提供有保证的资源。
  • 当你检测到偷盗时间很高时,终止你的VPS,当你重新启动/重新部署它时,它会在另一台服务器上重新启动,而这个服务器的负载要小得多。