Heim >Backend-Entwicklung >Python-Tutorial >Problem mit Python beim Zugriff auf Redis
Heute ist bei der Verwendung von Python für den Zugriff auf Redis auf diesem Computer (Windows) ein Fehler aufgetreten. Es gibt zwei Arten von Fehlern:
Wenn ich Sentinel konfiguriere, wird ein Fehler wie der unbekannte Befehl „SENTINEL“ gemeldet 🎜>Wenn ich StrictRedis konfiguriere, wird ein NOAUTH-Authentifizierungsfehler gemeldet.
Für den ersten Fehler, das Unternehmen Vor kurzem ist ein Problem aufgetreten, und der Hauptgrund dafür war, dass Sentinel nicht gestartet wurde. Das Unternehmen hatte jedoch drei Redis-Sentinel-Maschinen Die anderen beiden Maschinen konnten nicht als Master verwendet werden, da ich bei der Redis-Konfiguration nicht weiß, welcher temporäre Worker die Wahlmaschine konfiguriert hat gewählt werden. Tatsächlich sollte die Konfiguration in n-m geändert werden, wobei n die Anzahl der Maschinen und m die Anzahl der Maschinen ist, die ausfallen dürfen.
import redis import ConfigParser import redis.sentinel class RedisConn: _rp = None def __init__(self): cp = ConfigParser.SafeConfigParser() cp.read('avatar_redis.conf') host = cp.get('redis', 'host') port = cp.get('redis', 'port') db_name = cp.get('redis', 'dbName') pass_word = cp.get('redis', 'passWord') self._rp = redis.StrictRedis(host=host, port=port, db=0, password=pass_word) # = redis.ConnectionPool(host=host, port=port, db=0, password='') #sentinel = redis.sentinel.Sentinel([(host, port)], socket_timeout=0.1) #self._rp = sentinel.master_for(db_name, socket_timeout=0.1) #self._rp = redis.Redis(connection_pool=conn_pool) def get_conn(self): return self._rp def set_value(self, key, value): self._rp.set(key, value) def get_value(self, key): return self._rp.get(key)Für weitere Probleme bezüglich des Python-Zugriffs auf Redis beachten Sie bitte die PHP-Chinese-Website für verwandte Artikel!