内核是如何给容器中的进程分配CPU资源的?

原文英文,约1800词,阅读约需7分钟。发表于:

目前许多企业的服务运作都依托于容器环境,我会提出几个关于容器CPU的问题,来检验大家对这门日常使用技术的掌握程度。

本文介绍了Linux cgroup的CPU子系统及其在容器中分配CPU时间的原理,通过创建cgroup对象和设置CPU限制来管理进程。进程添加到cgroup后,受到cfs_bandwidth中记录的时间限制。定时器为任务组分配带宽时间,并解除被限制调度的进程。文章还提到了关注throttle次数和时间对请求处理的影响。

相关推荐 去reddit讨论