我使用以下代码在actor中调用无状态服务:
要解决这个问题,我们必须添加听众The primary or stateless instance for the partition has invalid address
但是这个方法(CreateServiceReplicaListeners)vis不可用于覆盖从Actor注册远程。
当我们想要从演员到服务进行远程调用时,如何做到这一点?
1.将此添加到您的无状态服务代码,喜欢描述here:
protected override IEnumerable<ServiceInstanceListener> CreateServiceInstanceListeners()
{
return new[] { new ServiceInstanceListener(context =>
this.CreateServiceRemotingListener(context)) };
}
2.在你的演员中,像这样调用服务:
var carUpdate = ServiceProxy.Create<ICarUpdate>(new Uri("fabric:/App/Car"));
await carUpdate.ProcessCarUpdate();