lua字符串拼接_Nginx与Lua开发

本文介绍了Lua的基础语法,包括安装解释器、变量、循环和判断语句。接着讲解了如何在Nginx中集成Lua,编译安装LuaJIT和相关模块。然后通过灰度发布场景展示了Nginx如何调用Lua模块,利用Lua进行流量控制。文章还提供了实战案例,通过memcached和lua脚本来实现不同代码版本的平滑上线。
摘要由CSDN通过智能技术生成

介绍

Lua是一个简洁、轻量、可扩展的脚本语言。Nginx+Lua的优势:充分的结合Nginx的并发处理epoll优势和Lua的轻量实现简单的功能且高并发的场景。


一、Lua基础语法

1. 安装Lua解释器

[root@node1 /]# yum install lua[root@node1 /]# luaLua 5.1.4  Copyright (C) 1994-2008 Lua.org, PUC-Rio> print("Hello,world")Hello,world>

2. 脚本运行lua

新建一个lua文件:

#!/usr/bin/luaprint("Hello,World!")

赋权与运行:

[root@node1 lua]# chmod a+rx ./test.lua [root@node1 lua]# ./test.lua

3. lua注释

 --行注释 --[[     块注释 --]]

4. lua变量

a = 'alo\n123"' // 特殊符号,换行符a = '\97lo\10\04923"' //ASCLLa = [[alo123"]] //变量赋值

布尔类型只有nil和false,数字0、空字符串都是true。

lua中的变量如果没有特殊说明,全是全局变量。局部变量前加local。

5. while循环语句

sum= 0num = 1while num <= 100 do    sum = sum + num    num = num + 1endprint("sum =",sum)

lua没有++或+=这样的操作。

6. for循环语句

sum = 0for i = 1,100 do    sum = sum + iend

7. 判断语句

if age ==40 and sex == "Male" then    print("大于40男子")elseif age > 60 and sex ~= "Female" then    print("非女子而且大于60")else    local age = io.read()    print("Your age is"..age) // ..z字符串的拼接操作end

二、Nginx+Lua环境

默认情况下nginx是不支持lua的扩展模块。参考:Nginx编译安装Lua模块。

下载LuaJIT:是一个解释器,比lua解释器高效

[root@node1 ~]# cd /opt/soft/backup/[root@node1 backup]# wget http://luajit.org/download/LuaJIT-2.0.2.tar.gz// 解压[root@node1 soft]# tar -zxvf LuaJIT-2.0.2.tar.gz// 安装到指定目录[root@node1 LuaJIT-2.0.2]# make install PREFIX=/usr/local/LuaJIT// 导入环境变量[root@node1 LuaJIT-2.0.2]# vim /etc/profileexport LUAJIT_LIB=/usr/local/LuaJIT/libexport LUAJIT_INC=/usr/local/LuaJIT/include/luajit-2.0

下载nginx编译所需

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值