码迷,mamicode.com
首页 > 其他好文 > 详细

lua 操作redis

时间:2018-05-12 02:49:54      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:代码   逻辑   eval   --   命令   lua   ret   永久   开发   

Redis在2.6推出了脚本功能,允许开发者使用Lua语言编写脚本传到Redis中执行。使用脚本的好处如下:

  • 1.减少网络开销:本来5次网络请求的操作,可以用一个请求完成,原先5次请求的逻辑放在redis服务器上完成。使用脚本,减少了网络往返时延。
  • 2.原子操作:Redis会将整个脚本作为一个整体执行,中间不会被其他命令插入。
  • 3.复用:客户端发送的脚本会永久存储在Redis中,意味着其他客户端可以复用这一脚本而不需要使用代码完成同样的逻辑。

使用方式:

  redis-cli --eval demo.lua key1 key2.. , val1 val2...

  redis-cli eval "$(cat demo.lua)" 2 key1 key2..  val1 val2...   // 2 key 数量  

  redis-cli eval "return redis.call(‘get‘,‘a‘)" 0 

demo.lua 

  local vals = redis.call(‘get‘,KEYS[1]);

  print(vals)

调用 

  redis-cli --eval demo.lua a  <==>redis> get a  

lua 操作redis

标签:代码   逻辑   eval   --   命令   lua   ret   永久   开发   

原文地址:https://www.cnblogs.com/tataerwuge/p/9026791.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!