区分Python的redis客户端:hiredis、hiredis-py、redis-py

由于学习《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的时候会提升性能

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
我想将frontend 也是用volumes,将其映射到/app/frontend目录,在/app/frontend下install以及build,如何实现 docker-compose.yml文件: version: '3' services: frontend: build: context: ./frontend dockerfile: Dockerfile ports: - 8010:80 restart: always backend: build: context: ./backend dockerfile: Dockerfile volumes: - /app/backend:/app environment: - CELERY_BROKER_URL=redis://redis:6379/0 command: python manage.py runserver 0.0.0.0:8000 ports: - 8011:8000 restart: always celery-worker: build: context: ./backend dockerfile: Dockerfile volumes: - /app/backend:/app environment: - CELERY_BROKER_URL=redis://redis:6379/0 command: celery -A server worker -l info --pool=solo --concurrency=1 depends_on: - redis - backend restart: always celery-beat: build: context: ./backend dockerfile: Dockerfile volumes: - /app/backend:/app environment: - CELERY_BROKER_URL=redis://redis:6379/0 command: celery -A server beat -l info --scheduler django_celery_beat.schedulers:DatabaseScheduler depends_on: - redis - backend restart: always redis: image: redis:latest ports: - 6379:6379 restart: always mysql: image: mysql:latest environment: - MYSQL_ROOT_PASSWORD=sacfxSql258147@ ports: - 8016:3306 volumes: - ./mysql:/var/lib/mysql restart: always frontend:dockerfile文件 FROM node:16.18.1 WORKDIR /app/frontend COPY package*.json ./ RUN npm install COPY . . RUN npm run build:prod FROM nginx:latest COPY --from=0 /app/frontend/dist/ /usr/share/nginx/html EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]
最新发布
07-14

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值