0

我正在开发一个必须处理多个用户及其请求的 java 应用程序:即。可以创建(注册)用户,可以更新(更改头像,...),或将信息添加到他的帐户(例如描述他的启动)。

为此,我决定使用 neo4j,主要是因为它在关系方面的良好表现(应用程序是“社交的”)。

我想了解的,相信你也知道答案的,就是如何在neo4j中实现多线程。

以下是有关我的软件架构的一些信息:

我有 neo4j 服务器,然后,在我的 javaApplication 中有允许我与服务器通信的 neo4j jar。应用程序分为多个层,每一层都是一个库,包含在下一层中。这意味着我只需要重新编写一个层并暴露相同的接口,其他层不会受到影响。

问题是,使用 MySql,我有一个连接池,我从那里得到一个连接池,并在更高层使用它;一切都被隐藏了,JDBC 为我处理并发。

但是在 neo4j 中,我不明白如何实现并行性:它是从 neo4j 自动处理的吗?那是连接池吗?

我想我明白我必须创建一个“连接”,并且我与所有请求共享同一个。这样对吗?

是否有一些最佳实践可以做到这一点?

4

1 回答 1

1

在 Java 应用程序和嵌入式模式中,Neo4j 作为应用程序进程的一部分运行。您处理线程,并且可以为您的遍历生成多个线程并将 Neo4j 视为一个单例。如果您想要自动线程处理,您可以使用 Neo4j Server(通过 REST),它为您提供 webserver-liek 功能,包括多个线程。

于 2012-11-28T10:06:43.303 回答