redis与lua整合
生活随笔
收集整理的這篇文章主要介紹了
redis与lua整合
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
redis原生支持watch監聽、multi事務、exec批處理。但是下面的代碼無法獲取上面代碼的執行結果。上下文關系不存在。lua可以幫助完善redis功能。
redis 原生支持 監聽、事務、批處理,那么還需要lua嗎?
-
兩者不存在競爭關系,而是增強關系,lua可以完成redis自身沒有的功能
-
在lua中可以使用上一步的結果,也就是可以開發后面操作依賴前面操作的執行結果的應用,MULT中的命令都是獨立操作
-
redis可以編寫模塊增強功能,但是c語言寫模塊,太難了,lua簡單的多
-
計算向數據移動
-
原子操作
lua腳本盡量短小并且盡量保證同一事物寫在一段腳本內,因為redis是單線程的,過長的執行會造成阻塞,影響服務器性能
?
0表示不帶參數,也可以傳參數:
vi test.lua:
redis-cli --eval test.lua:注意這種寫法支支持Lua5.1以上版本
在lua腳本中可以通過redis.call調redis原生的命令來獲取值等操作:
vi test2.lua:
魔獸世界的客戶端幾乎都使用lua寫的。
?
總結
以上是生活随笔為你收集整理的redis与lua整合的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网关层面为何要用Lua
- 下一篇: Lua与Redis交互