azure - Azure 中多个部署环境之间的相互通信策略

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

我正在寻找多个部署环境中 Azure 中多个角色之间相互通信的最佳实践。

我们有以下部署环境

  1. 开发者本地部署
  2. 在 Azure 中共享开发部署
  3. Azure 中的 QA 部署
  4. 预生产部署
  5. 生产部署
  6. 等等..

在所有这些部署中,我们有多个 Web 角色以及辅助角色。

我正在寻找最佳实践,为每个部署创建唯一标识符,以便我们可以在每个部署的角色之间进行相互通信。

例如,如果我使用 azure 队列或服务总线,我如何唯一地标识每个部署,以便消息不会从一个环境跨越到另一个环境?

谢谢, 诺姆

最佳答案

您可能想要查看 Azure 服务运行时提供的名为 RoleEnvironment.DeploymentId 的全局静态变量。

此变量对于每个已部署的 Azure 服务都是唯一的(注意,不是角色)。

注意事项:

1) 如果您需要每个角色都有唯一的编号,请将 RoleName 附加到此变量:RoleEnvironment.CurrentRoleInstance.Role.Name

2) 本地开发模式下的部署遵循不同的命名约定,并且不会返回部署 ID 的 Guid。可能想为他们实现一个 Guid 生成策略。

关于azure - Azure 中多个部署环境之间的相互通信策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16826706/

相关文章:

java - 执行命令后客户端应用程序应采取什么操作?

asp.net-mvc-2 - 如何在一个 webrole 中使用 cspack 处理多个站点?

ssl - 使用 SSL 的 Azure 云服务无法正常工作

powershell - "Unexpected Error"使用 Connect-MsolService -AccessToken 连接到 Azure AD

azure - 如何在 Azure API 管理策略表达式中使用 RSA SHA256 签署 JWT?

c# - 如何将blob文件下载到内存流中?

azure - 通过托管标识将 Azure WebApp 限制为 APIM?

architecture - 隐藏输入字段 vs session vs cookie

database - 提供多版本数据库以向后兼容生产应用程序/数据库

升级后 Azure Web 角色速度变慢