azure - 了解如何在 Azure 中提供角色中的应用程序

标签 azure azure-web-roles azure-worker-roles

我工作的公司正在寻求开发一些针对云的应用程序。

  • 托管在 Azure Web 角色中的 ASP.NET Web Api 应用程序。
  • 托管在 Azure 辅助角色中的 Windows Server 类型应用程序。

我们对网络或云开发完全陌生,想了解以下内容:

当向消费者提供服务时,是否向所有人提供同一个应用程序实例,是每个请求一个,还是创建多个角色并向消费者提供服务?

最佳答案

When being served to the consumer, is the same instance of the application being served to all?

这取决于您要求 Azure 在多少个实例上运行您的应用程序。如果您只部署到 1 个实例,那么它当然会是响应所有请求的同一个实例。但如果您部署到多个实例,请求将被负载均衡,这意味着您无法保证来自同一用户的多个请求将由同一实例处理。

当您问这个问题时,可能是因为您可能想在运行实例的计算机上存储本地数据。然而,这不是一个好主意。 Windows Azure 可以随时拆除您的实例并在完全不同的计算机上启动您的应用程序。他们称之为“修复”,因为这种情况通常会发生,因为 Windows Azure 试图提供帮助并避免任何可能导致实例停机的潜在问题。但如果您的机器由于某种原因锁定或发生其他不良情况,也会发生这种情况。此修复过程意味着不属于部署包的任何内容都将丢失。例如,如果您正在记录磁盘上的文件,则当 Azure“修复”您的实例时,该日志将会丢失。

is it one per request or are multiple roles being created and served to consumers?

我不完全确定你的意思,所以我会猜测并冒着错误解释你的问题的风险。我的猜测是,您是在询问每个用户请求是否有一个实例。不,只会有您决定的实例数量。请记住,您必须为每个正在运行的实例付费,因此运行的实例数量由您决定是公平的。

当您将应用程序打包并准备部署到 Windows Azure 时,您可以决定要运行每个角色的多少个实例。您可以在部署包中设置此数量,以便在部署包时,Azure 将自动启动请求数量的实例。但是,您可以在部署后和动态更改每个角色的运行实例数。这使您可以在几分钟内扩展更多实例。

我希望这对您有所帮助,并且我正确理解了您的问题。 :-)

关于azure - 了解如何在 Azure 中提供角色中的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14677714/

相关文章:

jsp - 哪个功能可以在jsp页面中调用以验证登录的用户是否在角色中

azure-web-roles - VS 2015 中缺少 Web 角色和工作角色模板

ruby-on-rails - 如何在 Rails 应用程序中嵌入 PowerBI Tile? (并对其应用过滤器)

azure - 我可以在 Azure VNET 中设置 Azure 机器人服务吗?

azure - 无法保存网络接口(interface)的 IP 地址更改

azure - 在 Cloud Service 内运行多个站点时无法访问 RoleEnviroment

python - Azure 语音转文本 - 连续识别

azure - 调度 Azure 实例

azure - 在辅助角色中使用实例计数

azure - SDK 2.5 升级后 Windows Azure 角色内缓存不起作用