Redis的Python客戶端redis py

2021-06-04 13:51:06 字數 1750 閱讀 2063

1. 安裝

1. redis-py

a. 使用easy_install

sudo easy_install redis

b. 原始碼安裝

git clone 

cd redis-py

python setup.py install

2. parser安裝

parser可以控制如何解析redis響應的內容。redis-py包含兩個parser類,pythonparser和hiredisparser。預設,如果已經安裝了hiredis模組,redis-py會使用hiredisparser,否則會使用pythonparser。

easy_install hiredis

2. 使用

redis-py提供兩個類redis和strictredis用於實現redis的命令,strictredis用於實現大部分官方的命令,並使用官方的語法和命令(比如,set命令對應與strictredis.set方法)。redis是strictredis的子類,用於向後相容舊版本的redis-py。

import redis

r = redis.strictredis(host='127.0.0.1', port=9212)

r.set('foo', 'hello')

r.rpush('mylist', 'one')

print r.get('foo')

print r.rpop('mylist')

redis-py使用connection pool來管理對乙個redis server的所有連線,避免每次建立、釋放連線的開銷。預設,每個redis例項都會維護乙個自己的連線池。可以直接建立乙個連線池,然後作為引數redis,這樣就可以實現多個redis例項共享乙個連線池。

import redis

pool = redis.connectionpool(host='127.0.0.1', port=9212)

r = redis.redis(connection_pool=pool)

r.set('one', 'first')

r.set('two', 'second')

print r.get('one')

print r.get('two')

redis pipeline機制,可以在一次請求中執行多個命令,這樣避免了多次的往返時延。

import redis

pool = redis.connectionpool(host='127.0.0.1', port=9212)

r = redis.redis(connection_pool=pool)

pipe = r.pipeline()

pipe.set('one', 'first')

pipe.set('two', 'second')

pipe.execute()

pipe.set('one'. 'first').rpush('list', 'hello').rpush('list', 'world').execute()

redis-py預設在一次pipeline中的操作是原子的,要改變這種方式,可以傳入transaction=false,

pipe = r.pipeline(transaction=false)

Redis的Python客戶端redis py

1.redis py a.使用easy install 1 sudo easy install redis b.原始碼安裝 1 2 3 git clone cd redis py python setup.py install 2.parser安裝 parser可以控制如何解析redis響應的內容。...

redis的python客戶端redis py

去redis的官網看了一下的客戶端有很多,根據推薦和開發人員,選擇redis py。安裝方法可以使用easy install,或者從原始碼安裝。easy install redis 注意是redis,而不是redis py或者 git clone cd redis py python setup.p...

Redis 客戶端連線

redis 通過監聽乙個 tcp 埠或者 unix socket 的方式來接收來自客戶端的連線,當乙個連線建立後,redis 內部會進行以下一些操作 在 redis2.4 中,最大連線數是被直接硬編碼在 裡面的,而在2.6版本中這個值變成可配置的。maxclients 的預設值是 10000,你也可...