Пример #1
0
def main():
    rd = redis.Redis(host='localhost',
                     port=6379,
                     db=0,
                     password=None,
                     socket_timeout=None)
    #rd = redis.StrictRedis( host = 'localhost', port = 6379, db = 0, password = None, socket_timeout = None )

    key = "test1"
    value = "test1_val"
    rd.set(key, value)
    result = rd.get(key)
    print("result =\n")
    print(f'{ key } = { result }\n')

    # mset
    data = {"test2": "test2_val", "test3": "test3_val", "test4": "test4_val"}
    rd.mset(data)
    result = rd.get("test2")
    print("result =\n")
    print(f'{ key } = { result }\n')

    # value: JSON data
    key = "test1_sub"
    value = {
        "test1_sub1": "test1_sub1_value",
        "test1_sub1": "test1_sub1_value",
        "test1_sub1": "test1_sub1_value"
    }
    value = json.dumps(value, ensure_ascii=False).encode("utf-8")
    rd.set(key, value)
    result = rd.get(key)
    result = result.decode("utf-8")
    result = dict(json.loads(result))
    print("result =\n")
    print(f'{ key } = { result }\n')

    rd.close()

    # Sentinel
    sentinel = Sentinel([('localhost', 26379)], socket_timeout=0.1)
    master = sentinel.master_for('my_redis_master', socket_timeout=0.1)
    key = "master_test1"
    value = "master_test1_val"
    master.set(key, value)
    result = master.get(key)
    print("result (master) =\n")
    print(f'{ key } = { result }\n')
    slave = sentinel.slave_for('my_redis_master', socket_timeout=0.1)
    result = slave.get(key)
    print("result (slave) =\n")
    print(f'{ key } = { result }\n')

    sentinel.close()