如果这是一个微不足道的问题,我很抱歉,但我想知道 Spring Data Graph 作为嵌入式数据库上的 REST 客户端有哪些优点/缺点? 我正在使用 neo4j。
谢谢 卡梅尔
最佳答案
这完全取决于您的用例。各有利弊。
优点休息:
-> 不同的服务可以访问 neo4j DB(示例:我有一个服务负责类型 A、B 和 C 的节点。第二个服务负责节点 D 和 H,并且可以将 D 节点连接到 A -节点)。这样我就有了干净的域结构。每个服务只负责自己的域节点。我可以更新每项服务,而不必关闭整个应用程序。
->我可以从不同的语言(PHP)访问neo4j数据库
缺点: - 性能不如嵌入式图形数据库那么好(因为 Neo4j 服务器和服务位于同一台机器上,因此延迟不是那么大)。 - 没有交易
服务器的另一个优点是网络管理/可视化。
您还有更多选择。您可以拥有嵌入式 graphdb 以实现高性能,并且仅运行某些嵌入式服务,并使用自定义的、以域为中心的远程(REST 或其他)API 来为其他服务公开图形数据库。
通过使用 Neo4j 服务器并添加一些对性能更关键的服务作为服务器插件或扩展,也可以实现同样的效果,这些服务还能够公开更适合您的用例的自定义远程 API。
我将开始使用嵌入式图形数据库来开发您的服务,如果您想稍后将某些端点公开给其他服务,那么切换到 Neo4j 服务器非常容易。
在 REST-API 中,每个请求有一个事务,对于较大的操作,API 中有一个批处理操作。
关于neo4j - Spring Data Graph 作为 REST 客户端 - 有哪些优点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20067082/