python操作redis(二)

李小昂發表於2019-02-16

連線

redis-py需要一個可以執行的redis服務,如何安裝配置redis?
首先安裝redis模組

sudo pip3 install redis

在ipython中操作

In [1]: import redis

In [2]: r = redis.StrictRedis(host=`localhost`, port=6379, db=0, password=`123456`)

In [3]: r.set(`name`, `lyon`)
Out[3]: True

In [4]: r.get(`name`)
Out[4]: b`lyon`

連線池

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

In [6]: pool = redis.ConnectionPool(host=`localhost`, port=6379, db=0, password=`123456`)

In [7]: r = redis.Redis(connection_pool=pool)

管道

redis-py預設在執行每次請求都會建立(連線池申請連線)和斷開(歸還連線池)一次連線操作,如果想要在一次請求中指定多個命令,則可以使用pipline實現一次請求指定多個命令,並且預設情況下一次pipline 是原子性操作。

In [2]: import redis

In [3]: pool = redis.ConnectionPool(host=`localhost`, port=6379, db=0, password=`0okmnhy6`)

In [4]: r = redis.Redis(connection_pool=pool)

In [5]: pipe = r.pipeline(transaction=True)

In [6]: r.set(`country`, `china`)
Out[6]: True

In [7]: r.set(`city`, `beijing`)
Out[7]: True

In [8]: r.get(`country`)
Out[8]: b`china`

In [9]: r.get(`city`)
Out[9]: b`beijing`

In [10]: pipe.execute()
Out[10]: []

參考連結
https://pypi.org/project/redis/
http://www.cnblogs.com/melonj…

相關文章