Redis
 sql >> Datenbank >  >> NoSQL >> Redis

Objekt von redis ohne evalu erhalten?

Der Unterschied besteht darin, dass sowohl memcached als auch redis nur Zeichenfolgenwerte unterstützen, pylibmc serialisiert die gesendeten Werte mit pickle , redis-py wandelt sie einfach in eine Zeichenfolge um.

Wenn Sie dasselbe mit Redis tun möchten, können Sie Ihre eigenen Funktionen haben, die das Beizen für Sie erledigen.

def set_value(redis, key, value):
    redis.set(key, pickle.dumps(value))

def get_value(redis, key):
    pickled_value = redis.get(key)
    if pickled_value is None:
        return None
    return pickle.loads(pickled_value)