vSwap和Burstable RAM有什么区别?
vSwap是否使用磁盘创build并导致I / O? 我知道SWAP将使用磁盘,所以vSwap与刚在容器中虚拟化的交换相同。
如果主机节点有可用内存,并且超出了容器保证的内存,则突发内存本质上是内存。 这是一个有缺陷的系统,因为应用程序不读取OpenVZ beancounters中的内存。 这意味着你的VPS认为它比主机节点有更多的内存实际上保证你有。
例如,如果我设置了1GB的内存保证,并给了您2GB的突发,您将会看到一个具有2GB内存的VPS。 但是,如果您的使用量超过1GB,并且主机服务器在此之后没有内存给您,则OpenVZ内核会开始中止您的进程,将您的使用量降至等于或低于1GB的值,这是您保证的内存。
更合适的解决scheme是vSwap。 应用程序通常不希望用频繁访问的数据填满交换空间。 这是典型的(有很多例外)作为额外的内存存储来保持运行,如果你的内存使用量恰好超过了你的物理内存。 在普通的Linux系统上,交换是磁盘空间。 磁盘比RAM慢。 将系统盘视为RAM会影响性能。 OpenVZ将vSwap分配为主机节点上的实际RAM,而不是磁盘空间。 为了模拟更原始的环境,核心人为地减慢了容器,以使交换变得没有吸引力,正如通常认为的和预期的那样。
使用RAM分配vSwap而不是磁盘的想法是,当less数容器开始最大化其内存和交换时,您不希望服务器上的所有用户的磁盘延迟增加。 通过将其分配给RAM,可以避免不必要的磁盘性能问题。
对于执行更像实际虚拟化或像真正的专用服务器的OpenVZ VPS,vSwap是您可以select的选项,而Burst已经过时。
vSwap的计算方式是将您分配给容器的ram数量与您分配给它的突发内存数量相减。 一个正数创buildvSwap来解决这个差异。 就虚拟内存操作而言,物理驱动器上的Iopts我没有任何硬性数据,但我认为答案可能是否定的,或者至less不比其他任何内存pipe理系统