我使用Service Fabric作为我的微服务框架。我使用的是无状态服务,因为我们使用的是外部数据库。我有两种类型的用户:一种是CSR (客户代表),另一种是用户本身。我如何安排我的Actor服务来解决这个问题?
CSR几乎没有什么功能。但客户是整个拼图中的一大块。假设CustomerActor需要更新它自己的地址。同样的操作也可以由CSRActor完成。
建议创建两个不同的actor,CSRActor和CustomerActor,然后CSRActor对客户actor进行任何操作。或者Customer可以是单独的服务,并且这两种类型的参与者都调用CustomerService。还有其他想法吗?
发布于 2018-08-23 14:39:34
支持Actor polymorphism。您可以有一个从另一个Actor类型继承的Actor类型。
如下所示:
public abstract class CustomerBase : Actor, ICustomer
{ }
[ActorService(Name = "Customer")]
public class Customer : CustomerBase, ICustomer
{ }
[ActorService(Name = "Csra")]
public class Csra : CustomerBase, ICsra
{ }这将节省您为回答一个问题而打两个电话的开销。
https://stackoverflow.com/questions/51931380
复制相似问题