在 Azure Service Fabric 中动态创建服务

Create services dynamically in azure service fabric

我想知道是否可以从另一个服务内部创建多个服务结构服务?

我需要这个的场景是在 MMO 游戏中,一组玩家决定在魔兽世界风格的战场竞技场中与另一组玩家战斗。这些实例需要动态创建,并且这些服务应用程序的 IP 和端口地址需要以某种方式暴露给连接的播放器。

我已成功使用以下链接提供的信息创建服务:

http://www.codeguru.com/azure_activities/obtaining-reliability-and-scalability-in-azure-service-fabric.html

https://azure.microsoft.com/en-us/documentation/articles/service-fabric-rest-based-application-lifecycle-sample/

服务已创建,但一次只能创建一个,不知道如何从创建的服务中提取IP和端口信息。

服务小组是否可以解决这个问题?

https://msdn.microsoft.com/en-us/library/azure/system.fabric.fabricclient.servicegroupmanagementclient.aspx

您应该考虑为此使用 Actor 模型。 Multi-player游戏后台是actor-based系统的经典场景之一。所以,每当你需要创建一个新的玩家组时

  1. 为新组选择一个 ID。您将通过此 ID 对新组进行寻址。
  2. 使用此 ID 创建一个新的 ActorProxy 并向新演员发送消息。

Service Fabric 将为您完成所有启动、通信和生命周期管理工作。无需知道 IP 或任何网络详细信息。