NServiceBus端点没有开始Azure的服务织物本地群集上(NServiceBus endpo

2019-09-27 18:26发布

我有内部服务织物本地集群中运行的.NetCore无状态的WebAPI服务。

 return Endpoint.Start(endpointConfiguration).GetAwaiter().GetResult();

当我试图启动NServiceBus终点,我得到这个异常:

访问路径 'C:\ SfDevCluster \ Data_App_Node_0 \ AppType_App10 \ App.APIPkg.Code.1.0.0.diagnostics' 被拒绝。

怎样才可以解决? VS下运行管理员。

Answer 1:

你遇到的问题是,因为不应该你试图写的文件夹到您的应用程序编写。

该包文件夹用来存放你的应用程序二进制文件,每当应用程序在该节点托管可以动态创建。

此外,二进制文件由同一节点上运行多个服务实例重复使用,所以它可能竞争不同的情况下使用这些文件。

你应该不是指示你的应用程序写入到WorkFolder

public Stateless1(StatelessServiceContext context): base(context)
{
   string workdir = context.CodePackageActivationContext.WorkDirectory;
}

上面的代码将会给你这样的路径:

'C:\SfDevCluster\Data_App_Node_0\AppType_App10\App.APIPkg.Code.1.0.0.diagnostics\work'

此文件夹是动态的,会改变取决于应用程序的节点或实例上运行,创建的时候,您的应用程序应该已经有写权限了。

欲了解更多信息,请参阅:

怎么办-I-GET-文件-到-在工作目录对的一无状态服务?论坛= AzureServiceFabric



Answer 2:

  1. 打开文件夹属性安全选项卡
  2. 选择ServiceFabricAllowedUsers
  3. 添加写入权限


文章来源: NServiceBus endpoint is not starting on Azure Service Fabric local cluster