Как получить статус кластера Neo4j с помощью Java API - PullRequest
0 голосов
/ 10 декабря 2018

Я пытаюсь найти работоспособность кластера neo4j с помощью API Java.Я вижу CLI CALL dbms.cluster.overview () есть ли эквивалентный Java API для этого

1 Ответ

0 голосов
/ 11 декабря 2018

1.Вариант "Spring Boot"

Если Spring Boot с Spring Data Neo4J является опцией, вы можете определить DAO, который выполняет ваш оператор шифрования и получает результат в собственном классе QueryResult.

1.1 GeneralQueriesDAO

@Repository
public interface GeneralQueriesDAO extends Neo4jRepository<String, Long> {    
    @Query("CALL dbms.cluster.overview() YIELD id, addresses, role, groups, database;")
    ClusterOverviewResult[] getClusterOverview();
}

1.2 ClusterOverviewResult

@QueryResult
public class ClusterOverviewResult {
    private String id;  // This is id of the instance.
    private List<String> addresses; // This is a list of all the addresses for the instance.
    private String role; // This is the role of the instance, which can be LEADER, FOLLOWER, or READ_REPLICA.
    private List<String> groups; // This is a list of all the server groups which an instance is part of.
    private String database; // This is the name of the database which the instance is hosting.

    // omitted default constructor as well getter and setter for clarity    
} 

1.3 Ход программы

@Autowired
private GeneralQueriesDAO generalQueriesDAO;

[...]

ClusterOverviewResult[] clusterOverviewResult = generalQueriesDAO.getClusterOverview();

2.Вариант «Без пружины»

Без пружинной загрузки грубая процедура может быть:

Session session = driver.session();
StatementResult result = session.run("Cypher statement");

3.Вариант «Конечные точки HTTP»

Другой вариант может заключаться в использовании конечных точек HTTP для мониторинга работоспособности причинного кластера Neo4j .

.
...