当我手动启动已安装在我的 AMI 实例上的软件(Autodesk 3dsmax)时,该软件的第一次启动非常慢。(下一次启动正常,启动时间正确/正常)。
我的实例是从私有 ebs AMI(Windows server 2008 r2)启动的
我认为这并非特定于 3Dsmax 应用程序,但它对于所有(大型)软件来说几乎都相同。我猜它更多地与编译 dll 等有关...
您知道如何加快从 AMI 启动的实例上应用程序的首次启动速度吗?(特殊 AMI 烘焙、像 ngen.exe 这样的预编译,......)
提前感谢您的帮助。
答案1
AMI 只不过是 EBS 快照的集合,这些快照存储在 S3 中以提高耐用性并降低存储成本。从自定义 AMI 启动的实例需要从 S3 读取初始数据,而 S3 的设计目标与 EBS 截然不同,它提供更好的耐用性和面向对象的 API,但缺乏 EBS 提供的低延迟、带宽/IO 性能。
提高性能的唯一方法是使用 dd 等工具强制直接完全读取所有卷块。之后,所有卷块将被强制从 S3 拉到 EBS,从而为卷的剩余使用寿命提供最佳性能。
新创建的 EBS 卷“诞生”于 EBS,这就是您从一开始就可以期待最佳性能的原因。