Was ist der richtige Weg für die Verbindung von neo4j HA-Cluster mit neo4j-Ogm und ermöglicht hohe Verfügbarkeit und liest Scale-out?Verbindung zu neo4j HA Cluster
Ich habe einige Lösungen gesehen, die Haproxy beinhaltet.
Die erste ist die neo4j ogm-manual, die zeigt, wie Haproxy konfiguriert wird, um Verbindungen zum aktuellen Master zu übertragen. Diese Lösung ermöglicht hohe Verfügbarkeit, aber keine Scale-out-Freigabe lautet.
Die zweite ist Stefan Armbruster Blog "neo4j and haproxy: some best practices and tricks" über die Konfiguration Haproxy für Routing-Operationen liest für den gesamten Cluster und Schreibvorgänge nur für den Master-Server.
Ich habe einige Probleme mit Stefan Lösung:
- ich nicht Schraube Protokoll verwenden kann, muss ich http-Treiber verwenden.
- Ich werde Transaktionen für all meine Anfragen verwenden, und ich fürchte, es zu Problemen führen, weil nach dem Neo4j Entwicklerhandbuch:
Offene Transaktionen werden unter den Mitgliedern eines HA-Clusters nicht geteilt. Wenn Sie diesen Endpunkt in einem HA-Cluster verwenden, müssen Sie daher sicherstellen, dass alle Anforderungen für eine bestimmte Transaktion an dieselbe Neo4j-Instanz gesendet werden.
Vielen Dank, Ihre Antwort wird sehr geschätzt. Ich verstehe, dass die aktuelle Version von Neo4j OGM nicht zwischen Lese- und Schreibvorgängen unterscheidet. Ich versuche, einen Weg zu finden, eine Arbeit zu tun, um meinem System zu ermöglichen, die Lesevorgänge zu skalieren, bis dieser Abruf verfügbar ist. –