Lua入门和使用Redis、Redisson、Spring-data-redis调用Lua脚本

本文介绍了Lua的基本概念、安装步骤、语法特性,包括数据类型、变量、循环等。重点讲述了Lua在Redis中的应用,如原子操作、网络效率提升,并提供了使用Spring-data-redis和Redisson调用Lua脚本的示例。注意,当Redis使用RDB持久化时,脚本不会被持久化。
摘要由CSDN通过智能技术生成

Lua简介


Lua是一种开源、简单易学、轻量小巧的脚本语言,用标准C语言编写。

其设计的目的就是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。

Redis从2.6版本开始支持Lua脚本,Redis使用Lua可以:

  1. 原子操作。Redis会将整个脚本作为一个整体执行,不会被中断。可以用来批量更新、批量插入
  2. 减少网络开销。多个Redis操作合并为一个脚本,减少网络时延
  3. 代码复用。客户端发送的脚本可以存储在Redis中,其他客户端可以根据脚本的id调用。

入门


安装

Linux安装Lua :

curl -R -O http://www.lua.org/ftp/lua-5.3.0.tar.gz
tar zxf lua-5.3.0.tar.gz
cd lua-5.3.0
make linux test
make install
第一个lua脚本

编写Hello.lua文件:

print('hello world')

执行命令:

lua Hello.lua
基本语法

Lua提供交互式编程,可以在命令行中输入命令并立即查看结果。

Lua脚本也可以保存在一个以lua为结尾的文件,并执行。

Lua注释的符号是两个减号 :

-- 这是一行注释
--[[
	这是多行注释
--]]
print('这是一行代码')

Lua的关键字 :

and break do else
elseif end false for
function if in local
nil not or repeat
return then true until
while goto

Lua中的变量总是全局的。

数据类型

Lua有八个基本类型:

数据类型 描述
nil 这个最简单,只有值nil属于该类,表示一个无效值(在条件表达式中相当于false)。
boolean 包含两个值:false和true。
number 表示双精度类型的实浮点数
string 字符串由一对双引号或单引号来表示
function 由 C 或 Lua 编写的函数
userdata 表示任意存储在变量中的C数据结构
thread 表示执行的独立线路,用于执行协同程序
table Lua 中的表(table)其实是一个"关联数组"(associative arrays),数组的索引可以是数字、字符串或表类型。在 Lua 里,table 的创建是通过"构造表达式"来完成,最简单构造表达式是{},用来创建一个空表。
  1. nil

    print(a)
    

    a是未初始化的,打印a就会输入nil值。

  2. boolean

    boolean类型有两个值:truefalseLua也会把nil当成false值,但false不等于nil。与C语言不一样,0Lua中是true

    print(a == nil) -- true
    print(false
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值