Django-redis管道的使用
from django_redis
import get_redis_connection
redis_conn
= get_redis_connection
('verify_codes')
pl
= redis_conn
.pipeline
()
pl
.setex
("sms_%s" % mobile
, constants
.SMS_CODE_REDIS_EXPIRES
, sms_code
)
pl
.setex
('send_flag_%s' % mobile
, constants
.SEND_SMS_CODE_INTERVAL
, 1)
pl
.execute
()
Redis 管道技术
Redis是一种基于客户端-服务端模型以及请求/响应协议的TCP服务。这意味着通常情况下一个请求会遵循以下步骤:
客户端向服务端发送一个查询请求,并监听Socket返回,通常是以阻塞模式,等待服务端响应。 服务端处理命令,并将结果返回给客户端。
Redis 管道技术可以在服务端未响应时,客户端可以继续向服务端发送请求,并最终一次性读取所有服务端的响应。
管道技术最显著的优势是提高了 redis 服务的性能。