当前位置: 首页 > 知识库问答 >
问题:

Neo4j HA(嵌入式)通过Spring?

公羊渝
2023-03-14

使用1.8。2--尝试(最初)设置2节点HA群集。

以下部分“22.5.4。启动Neo4j嵌入HA模式"的

http://docs.neo4j.org/chunked/stable/ha-setup-tutorial.html

我已将以下内容添加到我的pom中。xml:

<dependency>
   <groupId>org.neo4j</groupId>
   <artifactId>neo4j-ha</artifactId>
   <version>${neo4j-version}</version>
</dependency>

并将我的application-content.xml修改如下:

<neo4j:config graphDatabaseService="graphDatabaseService" />

<context:property-placeholder 
        location="file:/etc/whiteRabbit.properties" />

<bean id="graphDatabaseService" class="org.neo4j.kernel.HighlyAvailableGraphDatabase"
                destroy-method="shutdown" scope="singleton">
                <constructor-arg index="0" value="${database.path}" />
                <constructor-arg index="1"> 
                        <map>
                                <entry key="ha.server_id" value="${server.id}"></entry>
                                <entry key="ha.server" value="${ha.server.address}:${ha.server.port}"></entry>
                                <entry key="ha.coordinators" value="${coordinators}"></entry>
                                <entry key="enable_remote_shell" value="port=1331"></entry>
                                <entry key="ha.pull_interval" value="1"></entry>
                        </map>
                </constructor-arg>
</bean>

/etc/白兔。属性包含:

节点1(地址:192.168.1.68)

server.id=1
ha.server.address=localhost
ha.server.port=6001
database.path=/databases/data/graph.db
coordinators=localhost:2181,192.168.1.100:2181

和节点2(地址192.168.1.100)

server.id=2
ha.server.address=localhost
ha.server.port=6001
database.path=/databases/data/graph.db
coordinators=localhost:2181,192.168.1.68:2181

当我启动每个实例时,我会得到正常的启动日志,然后

14:57:58.171 [localhost-startStop-1] INFO  neo4j - WARNING! Deprecated configuration options used. See manual for details

14:57:58.171 [localhost-startStop-1] INFO  neo4j - neo4j.ext.udc.disable has been replaced with neo4j.ext.udc.enabled

14:57:58.171 [localhost-startStop-1] INFO  neo4j - cannot configure writers and searchers individually since they go together

(只有首两个教统局局长与房委会的转变有关)

然后...没什么...(!)

创业就到此为止。鉴于上述页面中独立服务器的设置配置提到启动协调器实例作为流程的一个单独部分,我是否需要在此处手动执行此操作?还是应该自行处理?我如何找到日志信息来开始计算为什么我只是看到节点挂起?顺便说一句,如果我只启动一个节点——相同的挂起,日志中的相同位置,那么行为也没有什么不同。。。

我猜我错过了一些简单的东西?

D.

共有1个答案

班思源
2023-03-14

您可以将bean拉入属性文件中。此外,为了实现HA,还可以使用类HighlyAvailableGraphDatabase。这样做:

<bean id="configuration" class="org.neo4j.helpers.collection.MapUtil" factory-method="load">
    <constructor-arg value="/etc/whiteRabbit.properties" />
</bean>

<bean id="graphDatabaseService" class="org.neo4j.kernel.HighlyAvailableGraphDatabase" destroy-method="shutdown" scope="singleton">
    <constructor-arg name="storeDir" index="0" value="${database.path}" />
    <constructor-arg name="config" index="1" ref="configuration" />
</bean>

然而,配置bean应该指向一个neo4j。属性文件,该文件可以包含上述所有属性。

 类似资料:
  • 问题内容: 我想编写一个Spring Data JPA存储库接口方法签名,该签名使我可以在该实体中找到具有嵌入式对象属性的实体。有人知道这是否可行吗? 这是我的代码: 我可以使用Spring Data为此编写查询吗? 问题答案: 此方法名称应能解决问题: 有关参考文档的查询派生的部分中的更多信息。

  • 和servlet上下文init类。 我设法调出了jsf-Spring Boot配置,但现在JSF注释不起作用了。如果我手动将托管注释添加到faces-config.xml中,托管注释确实可以工作。我甚至添加了metadata-complete=“false”,所以jsf扫描注释,可惜它不起作用

  • 我正在将Neo4J嵌入式数据库与OGM一起使用,并通过OGM SessionFactory在目录中创建数据库服务: 这很好,但现在我想用Neo4J浏览器工具浏览创建的数据库。当我阅读时,我必须通过Bolt公开我的数据库才能访问它。 在Neo4J Embedded留档中,他们使用GraphDatabase aseService并简单地指定一个额外的螺栓驱动程序来公开数据库: 但不幸的是,在使用OGM

  • 我有时会在pom中看到以下声明。xml。。。 如您所见,sping-boo-starter-web被声明为tomcat-embed-jasper。 是不是sping-boo-starter-web已经有一个嵌入式tomcat了?为什么一些开发人员仍然声明tomcat-embed-jasper以及boot-starter-web?还是有什么原因?

  • 问题内容: 我正在玩spring-boot-sample-data-elastcisearch项目。我更改了pom并添加了: 与嵌入式Tomcat一起运行。我的application.properties有 我希望能够连接到localhost:9200以便使用elasticsearch-head或其他JS客户端。我想念什么?谢谢米兰 问题答案: 您应该自己定义它,因为NodeClientFacto

  • 4.26更新: 19:00打电话约第二天下午二面 4.23晚上8:00-9:00笔试,4.25晚上打电话问了一些问题,入职相关的和一些个人情况(主要用来确保能不能来),然后约了第二天早上一面,30min 自我介绍 询问项目(主要是自己所做的工作) 询问技术栈(我说C++和Java) C++和C相比有哪些优势 C和C++相比有哪些优点 C++和Java相比呢 现在有一种方法,使得Java运行性能接近