每次我在Visual Studio中构建Service Fabric解决方案时,都会修改ApplicationManifest和ServiceManifest,并为我的解决方案中的所有Reliable Actors添加Default Services条目。
我该如何防止这种情况?
注意:默认服务不为可靠服务创建,这正是我所期待的。
最终,我们的目标是创造一个空的"每当新租户/客户通过我们的Web门户(每个租户的应用程序类型的一个实例)注册时,命名应用程序实例。
然后租户可以通过我们的Web门户启用/禁用功能,这转换为在租户的应用程序实例中创建/删除Actor / Service类型的实例。
感谢您提供指导,如果这不是在Service Fabric中实现多租户方案中的隔离的正确方法。
答案 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来获得我想要的东西,但这是另一个故事。