Neo4j:锁店

时间:2013-04-08 11:21:41

标签: neo4j spring-data-neo4j

我正在使用存储库方法开发一个基于Spring Data Neo4j的项目。问题是我不能同时读取和写入图形(这在我的应用程序中是必需的),因为否则会出现此错误。我的Neo4j服务器实例没有运行但我有不同的进程试图使用数据库(即:相同的应用程序上下文加载不同的主要方法,这应该是问题,我不知道)。我习惯于关系数据库,很难理解这种行为。哪个是解决这个问题的最佳方法?或者,它确实可能吗?

这是我的应用程序上下文文件的一部分:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:context="http://www.springframework.org/schema/context"
          xmlns:mongo="http://www.springframework.org/schema/data/mongo"
          xmlns:neo4j="http://www.springframework.org/schema/data/neo4j"
          xsi:schemaLocation=
          "http://www.springframework.org/schema/context
          http://www.springframework.org/schema/context/spring-context-3.0.xsd
          http://www.springframework.org/schema/data/mongo
          http://www.springframework.org/schema/data/mongo/spring-mongo-1.0.xsd
          http://www.springframework.org/schema/beans
          http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
          http://www.springframework.org/schema/data/neo4j
          http://www.springframework.org/schema/data/neo4j/spring-neo4j-2.0.xsd">

          <!-- Neo4j -->
          <neo4j:config storeDirectory="/data/production/graph.db"/>
          <neo4j:repositories base-package="org.domain.project.repositories.neo4j"/>

通过这个上下文,我能够在我的自定义neo4j存储库实现中访问neo4jOperations接口,并且可以毫无问题地构建查询。另一方面,当前用户有权访问数据文件夹,因此这应该不是问题。

1 个答案:

答案 0 :(得分:0)

您无法从两个程序写入同一个Neo4j数据库。相反,您应该设置Neo4j HA群集,并使用其中一个群集实例作为SDN的嵌入式数据库。然后,复制等对您的应用程序是透明的。有关详细信息,请参阅https://groups.google.com/forum/?fromgroups=#!topic/neo4j/6mxSvhemd8M