我看到这些术语在云中的 QoS 和计算资源使用环境中一起使用,但我缺乏这些术语的正式定义以及它们之间的关系。
例如,本文档状态:
在一个过度承诺的环境,节点上的 pod 可能会尝试使用比任何给定时间点可用的更多的计算资源。
和
最终,如果交换空间不足,Pod 中的进程可能会由于以下原因而终止:系统超额认购。
到目前为止,我的理解是,如果承诺在全部收回时会导致该资源的超额认购,则认为该资源已超额承诺。另一方面,如果资源无法完成其承诺的所有工作,则认为该资源已超额认购。
我对这个主题还不熟悉,我想知道是否有关于这个主题的开创性论文可以参考
答案1
它们基本上意味着完全相同的事情,但是不同之处在于视角:
订阅(或超额订阅)是一个术语,它定义了从客户(无论他们是什么或谁)的角度看待他们试图使用的系统/服务的情况。例如,正如@Ron Maupin 在对该问题的评论中所描述的那样,如果你向比你同时处理能力更多的用户推销你的服务,那么你就是在超额订阅他们。
承诺(或过度承诺)是一个术语,它从系统/服务的视角来定义与服务客户所需资源相关的相同情况。例如,酒吧保镖让更多的人进入酒吧(有人超额预订了顾客,因此他们来到酒吧门口,但保镖让他们进来,这是过度承诺 :))。
然而,也有人对这个话题有不同的看法,例如本杰明·阿姆斯特朗认为“过度承诺”是指资源已经被分配(例如在我的例子中,酒吧已经满了,超出了容量),这是一件坏事,而“超额认购”只是承诺有一个位置,这是一件好事(从虚拟化的角度来看)。
答案2
这些术语可互换使用。在 Dell Software 文章中:vSphere 虚拟环境中 CPU、内存和存储超额订阅的最佳实践中,作者这样定义概念:
...管理员可以超额订购主机上的物理资源,以最大限度地增加主机上可运行的工作负载数量。换句话说,他们可以为虚拟机分配比主机上实际可用资源更多的资源。
并且在几个地方交替使用这两个词,例如:
内存资源超额订阅
常识
超额使用 RAM 是最具争议的资源超额使用选项之一。虽然 CPU 和存储资源经常被超额使用,但在超额使用 RAM 方面似乎有些保守。