使用pipeline管道执行redis命令

Posted 苦瓜爆炒牛肉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用pipeline管道执行redis命令相关的知识,希望对你有一定的参考价值。

pipeline管道可以减少后端与redis的连接次数,从而实现了优化。

  • 原理如下:

 

使用方法:

未使用pipeline前:

strict_redis = get_redis_connection(\'sms_codes\')  # type:StrictRedis
strict_redis.setex(\'sms_%s\' % mobile,constants.SMS_CODE_REDIS_EXPIRES, sms_codes)
strict_redis.setex(\'send_flag_%s\' % mobile,constants.SEND_SMS_CODE_INTERVAL, 1)

使用pipeline后:

strict_redis = get_redis_connection(\'sms_codes\')  # type:StrictRedis
pipeline = strict_redis.pipeline()  # type:pipeline
pipeline.setex(\'sms_%s\' % mobile,constants.SMS_CODE_REDIS_EXPIRES, sms_codes)
pipeline.setex(\'send_flag_%s\' % mobile,constants.SEND_SMS_CODE_INTERVAL, 1)
pipeline.execute()

拓展:

pipline.execute()有返回值,是一个列表,返回值的True或False,代表执行成功或失败

以上是关于使用pipeline管道执行redis命令的主要内容,如果未能解决你的问题,请参考以下文章

redis使用管道pipeline提升批量操作性能(php演示)

死磕 Redis----- 理解 pipeline 管道

死磕 Redis----- 理解 pipeline 管道

redis 管道(Pipelining)

使用redis pipeline打包执行多条任务

使用Redis管道提升性能