Stiamo utilizzando l'endpoint http per le query lette finora e stiamo pianificando di passare al driver java bolt. Ma nei test iniziali si è osservato che il driver del bullone è più lento del punto finale http. di seguito è riportato il codice del driver Java che stiamo utilizzando.Il driver del bullone neo4j è più lento del punto finale http
esempio driver creato a livello di contesto Applicazione: Driver neo4jReadDriver = GraphDatabase.driver ("bolt: //xyz.com", AuthTokens.basic ("Neo4j", "Neo4j"), Config.build () .withMaxSessions (20) .toConfig());
codice dell'applicazione per la query esecuzione:
Session session = neo4jReadDriver .session();
StatementResult result = session.run("MATCH(p:GOE) return count(p) as cnt");
while (result.hasNext())
{
Record record = result.next();
System.out.println("Total number of GOEs:"+ record.get("cnt").asInt());
}
result.consume();
session.close();
driver.close();
Questa query richiede costantemente il doppio del tempo rispetto http endpoint. La maggior parte del tempo impiegato su driver.getSession(). Sto facendo qualcosa di sbagliato qui? Come ottenere un throughput elevato utilizzando il driver java bolt con utenti concorrenti che eseguono le query di lettura?
Problema simile ma con driver .net. – MSRS