我需要部署 2 个不同的辅助角色实例,但每个实例都需要自己的配置数据(ID 代码、密码、SenderCompID 等)来连接到交易服务器。我无法在实例之间共享凭据。
最佳答案
任何角色(Worker 或 Web)的每个实例在基于应用程序的配置方面都是相同的。这是因为从同一应用程序创建的所有实例将读取完全相同的应用程序配置数据。
如果您以这样的方式编写应用程序,当应用程序启动时,它会读取计算机外部的数据(从 azure 存储、 azure 表或虚拟机外部的任何其他内容,主要在某些服务器上可用),然后配置自身,那么您可以实现您的目标客观的。您还需要在服务器上提供实例特定数据,以便每个实例获取自己的数据。如果我选择此选项,我可能会使用 Azure 表名称,即 Instance_ID#,以便每个实例都有自己的配置并自行配置。这样我就可以随时修改 Azure 表上的数据并重新启动角色以加载更新的配置。其他人可能有其他方法来实现这一点。
另一个选项是在同一个 Azure 应用程序中拥有两个角色(辅助角色或 Web 角色),虽然两个或多个辅助角色之间的应用程序代码可能相同,但您确实可以单独配置它们。上述每个选项都有自己的优点和缺点。
关于Azure辅助角色配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12676637/