随笔分类 -  Lua/Perl/Python

lua 脚本
摘要:Luarocks是一个Lua包管理器,基于Lua语言开发,提供一个命令行的方式来管理Lua包依赖、安装第三方Lua包等,社区比较流行的包管理器之一,另还有一个LuaDist,Luarocks的包数量比LuaDist多,更细节的两者对比可参阅这里 在做一些openresty的项目的时候,经常会借助一些 阅读全文
posted @ 2018-09-06 21:23 Tinywan 阅读(3547) 评论(2) 推荐(0)
摘要:github地址:https://github.com/golgote/neturl 最近在搞一个视频加密播放,中间使用要用lua 匹配一个域名,判断该域名是否正确 PS:使用PHP很好做,lua 的没找到呀 下来使用lua 在Nginx 中实现 (1)直接下载官网的url.lua文件,放在 $PA 阅读全文
posted @ 2018-05-27 22:31 Tinywan 阅读(1470) 评论(0) 推荐(0)
摘要:ngx.re.match 语法: captures, err = ngx.re.match(subject, regex, options?, ctx?, res_table?) 环境: init_worker_by_lua*, set_by_lua*, rewrite_by_lua*, acces 阅读全文
posted @ 2018-01-15 16:13 Tinywan 阅读(2396) 评论(0) 推荐(1)
摘要:1、自1.11.2.2开始,OpenResty版本已经包含并默认安装opm。所以通常你不需要自己安装opm。 2、我们在这里只需要做一个软连接就可以了 3、搜索指定软件包名称 4、搜索具有多个模式“lru”和“cache”的软件包名称和摘要。 5、在一些作者的名字下安装名为lua-resty-log 阅读全文
posted @ 2017-11-29 11:35 Tinywan 阅读(3673) 评论(0) 推荐(0)
摘要:http://www.jb51.net/article/55126.htm 阅读全文
posted @ 2017-06-06 11:20 Tinywan 阅读(319) 评论(0) 推荐(0)
摘要:1.类继承 ①代码 ②调用代码 ③输出结果 阅读全文
posted @ 2017-06-06 10:29 Tinywan 阅读(312) 评论(0) 推荐(0)
摘要:1.Lua面向对象实现步骤 ①创建一个全局表(称之为元表) ②设置这个元表的__index值(值通常为元表自己,这样就能通过__index查找到对应的属性和方法)__index 赋值其实是一个function的语法糖,Sharp.__index = Sharp等价于Sharp.__index = f 阅读全文
posted @ 2017-06-06 10:11 Tinywan 阅读(836) 评论(0) 推荐(0)
摘要:有问题 local 变量不放在全局函数中去 以上不需要 return 返回 阅读全文
posted @ 2017-06-05 23:08 Tinywan 阅读(375) 评论(0) 推荐(0)
摘要:完整代码 完整代码 阅读全文
posted @ 2017-06-04 15:57 Tinywan 阅读(718) 评论(0) 推荐(0)
摘要:一、短连接开始测试 ab -n 5000 -c 100 -k 127.0.0.1/test_redis_short #demo1 #demo2 ab -n 10000 -c 100 -k 127.0.0.1/test_redis_short #demo1 #demo2 比较卡 ab -n 20000 阅读全文
posted @ 2017-05-10 22:52 Tinywan 阅读(5020) 评论(2) 推荐(0)
摘要:1、先来个官方的ngx.re.match 分享:以上可以匹配nginx的uri里面的变量很方便。 2、ngx.re.match 指令 语法: captures,err = ngx.re.match(subject,regex,options?ctx?res_table?) 上下文: init_wor 阅读全文
posted @ 2017-05-09 16:50 Tinywan 阅读(10393) 评论(0) 推荐(0)
摘要:一、安装Lua 5.3.4 下载 重要:进入解压缩后的路径 cd .../lua-5.3.4/src 打开Makefile文件 在CFLAG一行 添加选项 -fPIC 像这样: 找到源文件的这行替换掉 然后编译、安装 执行完成后安装lua成功,可以查看lua 版本是否为刚安装的版本 查看 /usr/ 阅读全文
posted @ 2017-05-05 16:27 Tinywan 阅读(3053) 评论(0) 推荐(0)
摘要:介绍 当您需要执行子进程(或shell命令)时,这是一个打算与OpenResty应用程序一起使用的小型库。 它类似于os.execute和io.popen,除了它是完全非阻塞的,因此即使对于需要很长时间完成的命令也是安全的。 该库依赖于您需要在Web服务器(sockproc)上运行的守护程序组件。 阅读全文
posted @ 2017-05-04 21:17 Tinywan 阅读(5699) 评论(0) 推荐(1)
摘要:测试数据 nginx.conf get_cache_value.lua 一、默认配置AB压力测试 官方nginx/1.10.3 测试结果: openresty/1.11.2.1测试结果: 二、缓存测试(openresty/1.11.2.1): 1、lua_shared_dict cache_ngx 阅读全文
posted @ 2017-04-22 18:25 Tinywan 阅读(1399) 评论(0) 推荐(0)
摘要:源码地址:https://github.com/Tinywan/Lua-Nginx-Redis 一、 目标 使用Redis做分布式缓存;使用lua API来访问redis缓存;使用nginx向客户端提供服务,ngx_lua将lua嵌入到nginx,让nginx执行lua脚本,高并发,非阻塞的处理各种 阅读全文
posted @ 2017-03-11 09:59 Tinywan 阅读(24428) 评论(21) 推荐(3)