Azure:我什么时候应该使用启动任务?

And*_*rio 1 startup azure

我知道启动任务用于设置系统.例如,如果您的代码是用Python编写的,则可以添加启动任务来安装Python.但是这也不能在ProgramEntryPoint批处理脚本中完成吗?有什么不同?

San*_*tia 5

确实如此,如果您使用ProgramEntryPoint,似乎没有理由使用启动任务.您确实可以在同一个批处理文件中包含所有逻辑.

使用.NET WebRoles/WorkerRoles时,启动任务会变得更有用.在那里,您只能选择编写代码(您可以再次调用单个批处理文件调用其他批处理文件)和/或使用启动任务.

但是,如果从维护的角度来看它,那么使用启动任务来完成与实例的配置和安装有关的所有事情就会更加清晰.您在配置/安装和实际应用程序之间划清界限 - 您实际上可以将其视为关注点的分离(这将很容易理解为项目中的其他/新开发人员).

除此之外,您必须知道,当您使用任务时,您可以在不同的上下文(有限/高架)中执行任务,这从安全角度来看可能很重要.并且任务以不同的类型(简单,背景,前景)存在,可以在许多不同的场景中使用(例如,不断地ping你的站点的后台应用程序).如果您不使用任务,您可能需要自己处理所有这些.

这是一篇很好的博客文章,内容涵盖启动任务的详细信息:在Windows Azure中使用启动任务详细摘要