Dies ist eine E-Mail-Antwort von Nicolas, einem der Autoren von PHPredis. Ich danke ihm, dass er sich die Zeit genommen hat, mir zu antworten.
Hallo,
Ich möchte zunächst nur klarstellen, dass die RedisArray-Klasse keine Client-Bibliothek für Redis-Cluster bereitstellt. Es verwendet konsistentes Hashing, um Daten an eine Reihe unabhängiger Redis-Knoten zu verteilen, und bietet eine gemeinsame Schnittstelle, sodass Entwickler vermeiden können, die Verteilungsschicht selbst schreiben zu müssen.
Phpredis unterstützt derzeit kein Redis-Cluster.
Beantwortung Ihrer Fragen:
- Es ist möglich, sich mit RedisArray mit 4 Redis-Servern zu verbinden.
- RedisArray bietet konsistentes Hashing und Sie können auswählen, welcher Teil des Schlüssels für die Verteilung verwendet werden soll.
- Die Klasse RedisArray hat einige Einschränkungen. Insbesondere Multi-Key-Befehle (z. B. ZINTERSTORE) werden meist auf einem Knoten ausgeführt, manche bieten aber eine integrierte Verteilung (z. B. DEL, MGET).
Weitere Informationen zur RedisArray-Klasse finden Sie in der Dokumentation auf GitHub.
Sie haben jetzt Unterstützung für Redis-Cluster hinzugefügt https://github.com/phpredis/phpredis/blob/feature/redis_cluster/cluster.markdown#readme