如何阻止Service Fabric为Actor

时间:2017-07-24 23:39:15

标签: azure-service-fabric service-fabric-actor

每次我在Visual Studio中构建Service Fabric解决方案时,都会修改ApplicationManifest和ServiceManifest,并为我的解决方案中的所有Reliable Actors添加Default Services条目。

我该如何防止这种情况?

注意:默认服务为可靠服务创建,这正是我所期待的。

最终,我们的目标是创造一个空的"每当新租户/客户通过我们的Web门户(每个租户的应用程序类型的一个实例)注册时,命名应用程序实例。

然后租户可以通过我们的Web门户启用/禁用功能,这转换为在租户的应用程序实例中创建/删除Actor / Service类型的实例。

感谢您提供指导,如果这不是在Service Fabric中实现多租户方案中的隔离的正确方法。

2 个答案:

答案 0 :(得分:2)

感谢Kiryl ...我终于找到了一篇文章,解释了在Visual Studio中构建Service Fabric应用程序时禁用应用程序清单生成的方法。

打开Actor项目的.csproj并将以下属性修改为“false”

<UpdateServiceFabricManifestEnabled>false</UpdateServiceFabricManifestEnabled>

您可以在此处找到该文章:https://github.com/Azure/service-fabric-issues/issues/271

干杯!

答案 1 :(得分:0)

我说你不​​能......曾经有一段时间我试图为分区方案设置我自己的设置(将默认设置切换为命名分区或更改UniformInt64的低/高键)但是VS覆盖了无论我做了什么,他们都是。事实证明这是一种预期的行为,因为我“误解了”如何对演员进行分区,所以VS很乐意'修正'我的错误。请参阅Can't change partitioning scheme for actors以获取参考。底线是,似乎VS调整Actors Service清单以保持actor的神圣目的作为一种模式。

对于多租户应用程序,请考虑为每个客户/租户部署一个单独的应用程序类型及其自己的设置。

P.S。我能够通过手动部署Actors Service而不是通过VS来获得我想要的东西,但这是另一个故事。