Bar*_*ona 7 akka microservices
我将为我的应用程序应用微服务架构.微服务之间的内部通信将通过使用Akka来实现.但我不知道如何使所有微服务知道并相互注册.我有一些设计Service Registry和Discovery的选项:
1)使用Zookeeper作为中心化服务来保存所有微服务(节点)的所有元数据,并让他们访问这些元数据进行通信.每个节点的元数据包含Akka路径(地址)信息,以便让其他节点进行通信.
2)将所有微服务(Akka Nodes)加入Akka集群,每个节点将保持彼此的引用以进行通信.Akka Cluster支持八卦协议,它将让群集中的所有节点一起识别.
有人可以给我一些建议吗?如何在Akka之上有效地设计服务发现和服务注册表?这有什么选择吗?
小智 1
一段时间以来,我一直在使用您建议的第二种方法构建类似的分布式应用程序,其中微服务在 Akka 集群中运行,几乎没有预定义的播种器节点。每个微服务都使用角色来标识自身,并具有它感兴趣的角色列表。
每个节点/微服务都有一个监听成员事件的参与者,负责为感兴趣的节点保留路径地址,并且充当节点间消息的路由器。
我很喜欢这种方法,它可以轻松地提供可扩展性。
| 归档时间: |
|
| 查看次数: |
772 次 |
| 最近记录: |