我正在开发一个必须处理多个uers及其请求的java应用程序:即。用户可以创建(注册),可以更新(更改头像,...),或者向他的帐户添加信息(比如描述他的发布)。
为此,我决定使用neo4j,主要是因为它在关系中的良好表现(应用程序是“社交”)。
我想了解的是,我相信你知道答案,是如何在neo4j中实现多线程的。
以下是有关我的软件架构的一些信息:
我有neo4j服务器,然后,在我的javaApplication中,我有neo4j jar,它允许我与服务器通信。应用程序分为多个层,每个层都包含一个包含在下一层中的库。这意味着我只需重新编写一个图层并公开相同的界面,其他任何图层都不会受到影响。
问题是,使用MySql,我有一个连接池,我从哪里获得并在更高层使用它;一切都被隐藏了,JDBC为我处理了并发性。
在neo4j中,我不明白如何实现并行性:它是否自动从neo4j处理?那是连接池吗?
我想我明白我必须创建一个“连接”,并且我与所有请求共享相同的连接。是不是?
是否有一些最佳做法来做到这一点?
答案 0 :(得分:1)
在Java应用程序和嵌入模式下,Neo4j作为应用程序进程的一部分运行。您处理线程,并可以为您的遍历生成多个线程,并将Neo4j视为单例。我想要自动线程处理,你可以使用Neo4j Server(通过REST)为你提供webserver-liek功能,包括多个线程。