我有一台生产机器(c4.2xlarge),工作正常。 但是,当我做到以下几点:
新开始的机器初始响应非常缓慢 。 当我继续在机器上工作时,速度开始改善,直到几个小时后,它的响应性与我更换根音量之前一样。
为什么发生这种情况?
直观地看,这似乎是一个caching问题,就好像机器需要“预热”,然后才能按预期执行。 但是这对我来说并没有什么意义,因为我所做的只是取代机器的根音量。
EBS快照存储在S3上。 当您从快照创build新的EBS卷时,数据将从S3传输到EBS,因为这些块是必需的。 我怀疑这也可能会降低整体数量,但这可能需要一些时间,这就是为什么它优先考虑你现在需要的块。
要解决此问题,请预先调整音量。 完整的程序在这里 ,但我会概述这篇文章的要点
。
[ec2-user ~]$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT **xvdf** 202:80 0 30G 0 disk xvda1 202:1 0 8G 0 disk /
。
[ec2-user ~]$ sudo dd if=/dev/**xvdf** of=/dev/null bs=1M
请注意,新的EBS卷不需要预热,因为S3上没有任何内容。
注意:需要无关的点才能使格式正常工作。
这可能是由于RAM中的磁盘内容的高速caching。 当你的服务器运行时,文件系统中的东西被caching在RAM中,允许以RAM的速度检索这些块,而不是等待块从磁盘读取。
当你启动一个新的服务器时,没有任何东西在启动时被caching,但是当应用加载时,caching被填充,从而提高了性能。