Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Neo4j 在微服务之间共享图形数据库_Neo4j_Microservices_Graph Databases_Amazon Neptune - Fatal编程技术网

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

Neo4j 在微服务之间共享图形数据库,neo4j,microservices,graph-databases,amazon-neptune,Neo4j,Microservices,Graph Databases,Amazon Neptune,有没有办法在微服务之间共享neo4j/aws Neptune图形数据库,同时将对图形数据库特定部分的访问限制为仅对特定微服务的访问?这样做会对性能产生影响吗?在Amazon Neptune中,目前无法为图形的一部分设置ACL。您可以让IAM用户完全访问群集或根本没有访问权限。(全部允许或全部拒绝)。您需要在应用程序层处理这个问题。细粒度的访问控制将是一个很好的特性,因此您可能希望为此提出特性请求(例如,通过AWS论坛) 如果您排除了访问控制,并且您唯一需要的是使微服务不相互影响,那么您可以创建读

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

在Amazon Neptune中,目前无法为图形的一部分设置ACL。您可以让IAM用户完全访问群集或根本没有访问权限。(全部允许或全部拒绝)。您需要在应用程序层处理这个问题。细粒度的访问控制将是一个很好的特性,因此您可能希望为此提出特性请求(例如,通过AWS论坛)

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

  • 在集群中添加足够的副本,并在只读微服务中使用集群ro(读卡器)端点。所有微服务都将共享读取副本,但使用DNS循环
  • 为各种用例添加副本,然后使用具有特定微服务的特定实例端点。微服务不会相互影响,但是,这种方法的一个缺点是,在崩溃的情况下,您的实例可以升级为master,这可能是您需要处理或准备的事情

  • 您不应该分享它,请参阅下面的答案,如果您需要关于这个问题的任何其他信息,请告诉我。