首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将Spring boot应用程序与Neo4J HA集群集成?

如何将Spring boot应用程序与Neo4J HA集群集成?
EN

Stack Overflow用户
提问于 2018-02-18 20:32:56
回答 1查看 317关注 0票数 0

这是我当前的配置类。我使用的是本地neo4j实例。我想要更改配置以连接到neo4j HA群集。我知道集群功能在neo4j企业版中可用。

代码语言:javascript
复制
@Configuration
@EnableTransactionManagement
@ComponentScan("io.sample")
@PropertySource("classpath:neo4j.properties")
public class PersistentContext {

   @Value("${neo4j.driverClassName}")
   private String driverClassName;

   @Value("${neo4j.connectionUrl}")
   private String connectionUrl;

   @Value("${neo4j.username}")
   private String username;

   @Value("${neo4j.password}")
   private String password;

   /**
     * Creates session factory
     * 
     * @return {@link SessionFactory} neo4j session factory
   */
   @Bean
   public SessionFactory getSessionFactory() {
      return new SessionFactory(configuration(), 
     "io.sample.model");
   }

   /**
    * Creates neo4j transcationManager by passing session factory
    * 
    * @return {@link Neo4jTransactionManager} transaction manager for 
      neo4j
    * @throws Exception
    *             when failed to create neo4j transaction manager
   */
   @Bean
   public Neo4jTransactionManager transactionManager() throws 
   Exception {
    return new Neo4jTransactionManager(getSessionFactory());
   }

   /**
    * Creates configuration by setting driverClass, connectionUrl and
    * credentials
    * 
    * @return {@link org.neo4j.ogm.config.Configuration} instance for 
      neo4j
    *         configuration
    */
    @Bean
    public org.neo4j.ogm.config.Configuration configuration() {
        org.neo4j.ogm.config.Configuration configuration = new 
        org.neo4j.ogm.config.Configuration();
       configuration.driverConfiguration()
      .setDriverClassName(driverClassName)
      .setURI(connectionUrl).setCredentials(username, password);
       return configuration;
    }
 }

neo4j.properties文件如下所示:

代码语言:javascript
复制
neo4j.driverClassName=org.neo4j.ogm.drivers.http.driver.HttpDriver
neo4j.connectionUrl=http://localhost:7474
neo4j.username=neo4j
neo4j.password=root
EN

回答 1

Stack Overflow用户

发布于 2018-02-19 16:09:49

它应该是开箱即用的,但是...(稍后)

例如,您可以创建三个Neo4j实例:neo4j-machine1neo4j-machine2neo4j-machine3,并将必要的配置设置为已解释的in the docs。使用此配置,您仍然可以通过HTTP连接到其中一台机器,它将负责分发请求。

现在是“但是”:如果这台机器离线,你将无法再访问集群。更好的解决方案是在您的网络中引入代理服务器。下面是一个配置HAProxy in the OGM docs的示例。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48851723

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档