Neo4j 4.0之前,instance0~instance2都是因果集群里的核心服务器
URI=bolt+routing://instance0:7687
URIS=bolt+routing://instance1:7687,bolt+routing://instance2:7687
Neo4j 4.0之后,instance0~instance2都是因果集群里的核心服务器
URI=neo4j://instance0:7687
URIS=neo4j://instance1:7687,neo4j://instance2:7687
根据Neo4j学习笔记(四.2) (转)Neo4j因果集群路由策略详解及驱动访问 的提示,这个地方的连接地址配置有两种策略,
策略1:设置一个包含多个 A 项的 DNS 记录,每个 A 项都指向集群成员的核心服务器,在配置文件里使用这个DNS域名即可。
策略2:在配置文件里把连接候选的所有核心服务器都列入进去。
不管哪种,都是使用核心服务器,因为只读副本没有路由功能,只读副本的使用,是由核心服务器路由使用。
因果集群的只读副本服务器只提供读取查询,用来提高查询的吞吐量。
默认的事务类型是读/写,只会使用核心服务器,必须显示的声明为只读事务,才会路由到只读副本服务器来完成查询。在不需要写操作的时候,服务类的方法名上加上只读属性,标记为使用只读事务:
@Transactional(value="neo4jTransactionManager", readOnly=true)