在微服务之间共享图形数据库

问题描述 投票:0回答:1

有什么方法可以在微服务之间共享neo4j / aws Neptune图数据库,同时将对图数据库特定部分的访问限制为仅特定的微服务? 这样会不会对性能产生影响?

neo4j microservices graph-databases amazon-neptune
1个回答
0
投票

在Amazon Neptune中,目前无法为部分图表提供ACL。 您可以拥有对群集具有完全访问权限或完全没有访问权限的IAM用户。 (全部允许或全部拒绝)。 您将需要在应用程序层进行处理。 细粒度的访问控制将是一个不错的功能,因此您可能希望为此提出功能请求(例如,通过AWS论坛)。

如果您排除访问控制,并且唯一需要做的就是使微服务不相互影响,那么您可以创建只读副本,并在微服务中使用它们(无论跨微服务共享数据库是一个不错的选择,还是不是单独的讨论)。 有两种方法:

  1. 在您的集群中添加足够的副本,并在只读微服务中使用cluster-ro(读取器)终结点。 所有微服务将共享只读副本,但使用DNS循环。
  2. 添加各种用例的副本,然后将特定的实例端点与特定的微服务一起使用。 微服务不会相互影响,但是,这种方法的缺点是,当崩溃时,您的实例可以被提升为主实例,这可能是您需要处理或准备就绪的事情。
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.