區分Python的redis客戶端:hiredis、hiredis-py、redis-py

煲煲菜發表於2017-09-18

由於學習《Redis實戰》用的是Python,需要按Python的redis客戶端庫。被幾個庫搞得有點暈,在此區分一下。

區分hiredis、hiredis-py、redis-py

redis官網Github:https://github.com/redis,這裡會看到兩個專案:

  1. hiredis –> 是一個C語言的redis客戶端庫
  2. hiredis-py –> 是Python語言包裝了hiredis的redis客戶端庫

Andy McCurd的Github:https://github.com/andymccurdy,這裡會看到一個專案:

  1. redis-py –> 是一個Python語言的redis客戶端庫

因此,hiredis-pyredis-py都是Python語言的庫,兩者沒有直接關係。
安裝方法:

安裝hiredis-py: pip install hiredis
安裝redis-py: pip install redis

Python檔案中引入方法:

redis-py和hiredis-py的聯絡

redis-py文件 中可以看到這麼一段內容:

Parser classes provide a way to control how responses from the Redis server are parsed. redis-py ships with two parser classes, the PythonParser and the HiredisParser. By default, redis-py will attempt to use the HiredisParser if you have the hiredis module installed and will fallback to the PythonParser otherwise.

譯:Parser類可以控制如何解析Redis伺服器端響應的內容。redis-py提供兩個parser類,PythonParser和HiredisParser。如果你已經安裝了hiredis模組,redis-py預設會嘗試使用HiredisParser,否則會使用PythonParser。

Hiredis is a C library maintained by the core Redis team. Pieter Noordhuis was kind enough to create Python bindings. Using Hiredis can provide up to a 10x speed improvement in parsing responses from the Redis server. The performance increase is most noticeable when retrieving many pieces of data, such as from LRANGE or SMEMBERS operations.

譯:Hiredis是一個C語言的庫,是由Redis核心團隊維護的。Pieter Noordhuis還寫了一個Python版本的Hiredis(即hireids-py)。使用Hiredis可以使得redis客戶端解析服務端響應內容的速度提升10倍。而且當執行檢索多條資料時效能更顯著,如LRANGESMEMBERS等。

Hiredis is available on PyPI, and can be installed via pip or easy_install just like redis-py.

譯:Hiredis可以在PyPI上找到,你可以使用easy_install或pip來安裝(hiredis-py)。

$ pip install hiredis
or
$ easy_install hiredis

因此,安裝redis-py同時安裝hiredis-py,使用redis-py的時候會提升效能

相關文章