首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有一种方法可以减少Azure部署启动和调用角色OnStart()代码之间的时间?

有没有一种方法可以减少Azure部署启动和调用角色OnStart()代码之间的时间?
EN

Stack Overflow用户
提问于 2012-05-11 06:40:15
回答 3查看 4.3K关注 0票数 5

目前,当我使用创建部署时,大约需要9(9!)运行我的角色OnStart()中的代码的分钟。我觉得那里有些地方不对劲--九分钟太长了。

我有一个小的启动任务,我希望能在几秒钟内完成(在Compute模拟器下运行时,它会在几秒钟内完成),所以看起来Azure基础设施一直在做一些重要的事情。

有没有办法加快这一进程?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-05-11 06:58:10

Windows通常需要5-15分钟部署。它正在做的是旋转服务器,VM,引导Windows等等。随着时间的推移,它的速度越来越快,但是九分钟当然不是不寻常的事情。

票数 9
EN

Stack Overflow用户

发布于 2012-05-11 16:55:18

当您将应用程序部署到Windows时,取决于您的VM大小和实例计数,这就是所发生的情况:

  1. 您可以提供VM类型(小、中、大、大)和实例计数(ex )。(N)
  2. 取决于VM类型设置,如果您选择了small,则Fabric Controller ( FC )需要找到一个可以为您启动单个核心VM的槽,或者如果您选择了ex,则FC需要找到一台主机来承载8个核心客户VM。在这个步骤中,可能出现两种可能性(还有更多的可能性,但为了简单起见,我只引用2):

2.1FC可以找到一个准备好的节点(或机架),该节点(或机架)已经有一个或多个可以免费承载您的VM2.2FC的内核,可能在所有正在运行的主机节点中找不到任何空核心。对于您来说,如果您的VM被选择为路径2.1,则需要重新启动一个新节点来承载您的客户VM

  • ,在这种情况下,主机VM已经在运行,并且主机只需要根据您的大小为您提供一个来宾VM。这可能会花费更少的时间,因为系统只需要提供和启动VM。如果您的VM为路径2.2选择了

  • ,那么在这种情况下,主机将首先启动(如果主机没有运行并且非常常见*),然后您的来宾VM需要配置和启动。这条路径将比路径2.1.

花费更长的时间。

注意:使用2.1和2.2,您可能不得不在部署相同的应用程序时分离经验。

  1. 也会找到N个实例来运行您的服务,但是这个过程将并行于2.1/2.2,但是时间安排几乎是一样的。此外,FC还需要为每个实例查找不同的故障域,因此如果一个实例关闭,其他实例仍处于活动状态。

因此,在系统内部,除了简单地打开Windows 2008机器之外,还有很多事情要做。因为多个VM是在一个主机上运行的,所以当提供了一个客户VM时,需要做很多事情来保持工作正常。

关于你对“随时都可以使用的小服务器队”的评论,这是个不错的评论,但是当有一个为全世界服务的数据中心“小”是非常“庞大”的数量,仅仅为了让成千上万的机器在没有任何客人的情况下运行是不符合逻辑的。此外,您只是偶尔部署,这不是您将做的日常基础上,所以有不到10分钟仍然是可以理解的。

票数 13
EN

Stack Overflow用户

发布于 2016-11-14 15:29:45

如果你指的是Azure中现有的VM,你会停止(交易)并偶尔启动,那么是的--有一种方法可以让它变得非常快,但你需要为此付出代价。您必须移动您的VM使用高级存储。

主要的区别是,高级存储不仅在速度更快的SSD驱动器上,而且在不使用时不会存档--所以即使在VM离线时也要为此付费。您看,正常的存储VM,当您启动它时,它们会复制到VHD中,在它运行的另一个存储中运行,当您完成时,它将被存档,并且您不需要支付磁盘的费用。

但是,有了优质的存储,VHD总是可以随时运行,所以当您启动VM时,它不会被复制到任何地方。这样就快多了。缺点:即使在VM被解除分配时,也要为VHD付费。

所以,无论你是否愿意支付,都由你来决定--但有一个办法。

(我不是天蓝色专家,但我问了几个MVP同事,他们就是这么解释的。)如果这是不准确的话,我很想听听)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10546624

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档