2014-09-30 71 views
0

我正在寻找从我的应用程序服务器到我的Neo4j实例的最高效和“持久”连接方法。两者都在同一台机器上运行。应用服务器与node.js的Neo4j替代HTTP

我说的做:

Persistent TCP connection (not counting HTTP w/ Connection: keep-alive) 
Unix sockets 
Shared memory? 

的Neo4j的文档都是关于HTTP方法,似乎无法找到很多有关的任何其他方式?

我发现这个第三方方法: https://github.com/joewhite86/node-neo4j-embedded 但在自述和公测大错误警告仅Neo4j的2.0+支持是严重沮丧

http://www.neo4j.org/tracks/neo4j_server说:“它有一个互动和友好的Web - 接口和Cypher的快速事务性HTTP端点,大多数驱动程序都支持Neo4j服务器。“

我什至不知道第二句话是什么意思。

+0

是你的应用程序中使用什么语言?在它和Neo4j之间使用网络连接有什么特别的理由吗? – 2014-09-30 13:25:49

回答

1

到目前为止,有对Neo4j的没有本地二进制协议选项,唯一的选择你是:

有一些这些东西的包装 - in Java for both,在差不多any language for the REST选项。

官方Google Group有一个话题,apparently a binary protocol was in plan。然后可能是plans have changed

但无论如何,Spring Data Neo4J文档页面上它指出:

春数据的Neo4j的未来版本将使用更高性能的批量API以及一个二进制协议。

所以很可能他们仍在努力。

另外我想这将有可能使用RexPro binary protocol,使用Neo4J + Rexster。我不确定这项工作是否值得,但你可以试一试。

+0

感谢Marco,非常有用的答案。你说得对,这些计划似乎已经改变了,谷歌组织的谈话已经过时了。来自neo4j Spring Data的消息:“还请记住,通过REST-API执行图形操作比本地操作慢大约一个数量级” - 我想我们被“世界领先图形数据库”困住了,以十分之一的效率执行查询。目前。 – zra 2014-10-03 20:45:46