gpt4 book ai didi

azure - 在 Windows Azure : What are web role, 辅助角色和 VM 角色中?

转载 作者:行者123 更新时间:2023-12-03 04:41:34 25 4
gpt4 key购买 nike

我工作的应用程序包含一个 Web 角色:它是一个简单的 Web 应用程序。我需要在 Windows Azure 中托管该应用程序,因此我创建了一个 Web 角色。我其实很想知道这些角色的用途。它们在编码方面或存储方面的重要性是什么?

最佳答案

编辑 2013 年 3 月 3 日 - 更新以引用 UDP 端点、虚拟机和更多语言

编辑 2013 年 6 月 6 日 - 更新以反射(reflect) VM 角色的终止,并将 Web/辅助角色基准操作系统镜像更新为 Windows Server 2012

@Vladimir 提供的良好链接。需要澄清一点:所有角色(Web、 worker )本质上都是 Windows Server。 Web 和 Worker 角色几乎相同:

  • Web 角色是启用了 IIS 的 Windows Server 虚拟机
  • 辅助角色是禁用 IIS 的 Windows Server 虚拟机(您可以手动启用它)
  • VM 角色是您通过 Hyper-V 在本地构建并上传到 Azure 的 Windows Server 2008 镜像(现已停产,自 2013 年 5 月 31 日起不再提供
  • 虚拟机是在 Azure 中创建的 Windows 或 Linux 镜像,作为 vhd 存储在您自己的存储中,并且比 VM 角色具有多项增强功能。例如:由于 vhd 位于您自己的存储帐户中,因此您可以轻松地从您的 vhd 创建图像模板,将其复制到新的 vhd,甚至上传到 VM Depot (仅限 Linux)。

回答您有关如何处理这些角色的问题:平台培训套件(如下所述)将为您提供许多好的想法和示例,但这里有一些简单的用例:

  • 您可以运行任何公开 tcp、http、https 或 udp 端点的代码(Web 应用程序、SOAP/REST 服务等)。不过,您需要考虑无状态的处理方式 - 如果您运行多个虚拟机实例,则用户流量将分布在这些实例之间。平台培训套件将向您展示如何使用存储或缓存来处理此问题。
  • 您可以运行依赖于队列或计时器的代码。也许您有按需任务,例如照片缩略图生成或基于用户输入的计算。这些不需要外部可用的端点。您可以将请求推送到队列,然后运行一个任务,该任务仅从该队列中获取信息(并且您可以跨多个实例扩展此过程,所有实例都会使用队列消息)。
  • 您可以运行.NET、Java、php、python、node、ruby等。您只需将适当的运行时代码与项目代码一起分发即可。所有语言都可以对 Azure API 进行 REST 调用,并且多种语言(包括上面提到的语言)都有 SDK 可以为您处理此问题。所有语言 SDK 均为 here ,源代码在github上,here .
  • 通过 VM 角色,您可以安装和运行非常复杂/耗时的安装、需要手动干预的安装以及无法可靠地自动化的安装。在这种情况下,您必须处理操作系统维护。除了 VM 角色之外,现在还有虚拟机,提供基于云的 VM 构建以及 Windows 和 Linux 支持。我建议使用虚拟机而不是 VM 角色。

通过 Web 和 Worker 角色,系统会为您处理操作系统和相关补丁;您无需管理虚拟机即可构建应用程序的组件。

通过 VM 角色,您可以构建完整的 Windows Server 镜像,向其添加 Azure Hook ,并将整个 VM 推送到云中(然后随着时间的推移维护 VM 镜像)。

使用虚拟机,您只需从图库中选择一个操作系统镜像,系统会为您创建该镜像并将其作为 vhd 存储在 blob 存储中。然后,您可以使用 RDP/ssh 并按照自己的喜好进行设置。

戴上建筑师的帽子,这就是有趣的地方。您可以在 Web 角色或辅助角色中运行 Web 服务(并且能够在其中任一角色中打开端口);您可以以辅助角色托管 Tomcat 或其他 Web 服务器。您可以选择将网站和服务组合为一个角色,也可以将它们拆分为多个角色以满足不同的可扩展性需求。

为了有个好的开始,请查看 Platform Training Kit并开始完成练习。

关于azure - 在 Windows Azure : What are web role, 辅助角色和 VM 角色中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7118942/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com