Amazon Web Service 和 Windows Azure 中的 Linux 和 Windows 启动时间

Amazon Web Service 和 Windows Azure 中的 Linux 和 Windows 启动时间

我已经使用 Windows Azure 和 Amazon Web Services EC2 很多个月了(几乎快到几年了),我一次又一次地看到一些令人不安的事情。

使用 AWS 和 Linux,我通常可以获得大约 1-3 分钟范围内的 EC2 实例启动时间。

在 EC2 实例上使用 AWS 和 Windows 操作系统通常需要 10-20 分钟。

使用 Windows Azure Web 或 Service Role 时,我通常需要等待 6-30 分钟才能启动一个角色。我当然假设这涉及在结构中的某个位置启动 Windows 实例。

我知道关于 Windows 与 Linux 的比较一直存在大量 FUD,但我真的很想知道为什么 Windows 08 或 03 在云中启动速度比 Linux 慢得多。任何有关此问题的具体技术信息都将不胜感激!谢谢。

答案1

Mark Russinovich(系统内部名声)过得很好讲话在最近的 Microsoft PDC 会议上,他解释了 Windows Azure 内部发生的事情。如果你不想看完整个视频或浏览一下幻灯片- 当您请求新实例时,除了简单地启动虚拟机之外,实际上还有很多事情发生。

当然,以上内容特定于在 Azure 云中启动 Windows VM。我没有使用过亚马逊的产品,但我认为他们在启动新实例之前也会进行大量与基础设施相关的操作。毫无疑问,通常使用 Linux 的机器启动速度比使用 Windows 的机器启动速度更快,但我认为云中启动时间的显著差异归因于基础设施特定的操作。

答案2

有一篇关于云中虚拟机启动时间的非常有趣的论文(易于阅读)。它包括 EC2、Rackspace 和 Azure。答案似乎是虚拟机映像大小。

http://www.slideshare.net/mingtemp/a-performance-study-on-the-vm-startup-time-in-the-cloud

http://www.cs.virginia.edu/~mm5bw/papers/Cloud%20VM%20Startup%20Performance%20Study.pdf

答案3

Windows 实例在启动过程中花费的大部分时间是 sysprep 和生成 SIDS。在 EC2 上,如果您要创建 AMI 并尝试从该映像启动实例(不使用 sysprep),您会注意到启动速度要快得多。

相关内容