从 .Net Core Stateless Service 调用 .Net 框架 Service Fabric Actor
Posted
技术标签:
【中文标题】从 .Net Core Stateless Service 调用 .Net 框架 Service Fabric Actor【英文标题】:Calling .Net framework Service Fabric Actor from .Net Core Stateless Service 【发布时间】:2019-04-07 04:28:22 【问题描述】:actor 依赖于用 .Net Framework 编写的 Nuget 包。 接口项目是用 .Net 标准编写的,因此可以从 .Net 核心无状态服务中使用。
当我尝试从无状态服务调用我的演员时,我收到一个错误:
FabricInvalidAddressException: NamedEndpoint 'V2Listener' not found in the address '"Endpoints":"":"abc.mydomain.com:30001+7cd01089-ada5-47b4-b057-c5ec048e5c9e-131856623077216555-c8ffdd2b-d8de-4fb1-a0c4-6aa54aede1a4"' for partition '7cd01089-ada5-47b4-b057-c5ec048e5c9e'
Microsoft.ServiceFabric.Services.Communication.Client.CommunicationClientFactoryBase<TCommunicationClient>.CreateClientWithRetriesAsync(ResolvedServicePartition previousRsp, TargetReplicaSelector targetReplicaSelector, string listenerName, OperationRetrySettings retrySettings, bool doInitialResolve, CancellationToken cancellationToken)
我已经尝试按照微软的监听器升级教程在actor上添加V2Listener,但没有成功。
【问题讨论】:
您是否在您的 actorservice 的服务清单中添加了一个名为ServiceEndpointV2
的服务端点?你在用FabricTransportActorRemotingProviderAttribute
吗?
这是问题,谢谢。我使用的是 FabricTransportServiceRemotingProviderAttribute 而不是 Actor 属性。
【参考方案1】:
请确保:
-
您在您的演员服务上使用
FabricTransportActorRemotingProviderAttribute
。
您的 actorservice 的服务清单中有一个名为“ServiceEndpointV2”的服务端点
【讨论】:
以上是关于从 .Net Core Stateless Service 调用 .Net 框架 Service Fabric Actor的主要内容,如果未能解决你的问题,请参考以下文章
.net framework(4.6.2) 迁移 .net core(2.2) 总结
.NET Core WebAPI - 带有属性路由的 404 回退
从.Net core 2.2迁移到.Net Core 3.0