
lua
鸭梨山大哎
life hard take it easy
展开
-
openresty lua_package_path指令
lua_package_path#语法:lua_package_path <lua-style-path-str>默认:由lua的环境变量决定适用上下文:http设置lua代码的寻找目录。例如:lua_package_path "/opt/nginx/conf/www/?.lua;;";具体的路径设置要参考lua的模块机制...原创 2020-12-30 19:44:23 · 2588 阅读 · 0 评论 -
windows下openresty环境配置
官网下载exe文件http://openresty.org/en/download.html解压后直接双击nginx.exe启动,之后再浏览器输入localhost就可以看到欢迎页面原创 2020-12-12 10:08:52 · 605 阅读 · 0 评论 -
openresty查看log
比如页面无响应内容,但是openresty也不报错,就需要查看loglog位置/usr/local/openresty/nginx/logs/error.log比如如下内容,就表明你在nginx配置中写的lua脚本有错误,错误在remote_user这里2020/12/12 09:13:37 [error] 2725#2725: *146 lua entry thread aborted: runtime error: /usr/local/openresty/lualib/luatest/tmp原创 2020-12-12 09:34:50 · 4001 阅读 · 0 评论 -
OpenResty-ngx.var变量
测试方式将测试写在tmp.lua中,用content_by_lua_file指令导入即可 server { listen 80; server_name localhost; location / { stub_status on; default_type text/html; content_by_lua_file /usr/local/openresty/luali原创 2020-12-12 08:46:19 · 7855 阅读 · 0 评论 -
lua_shared_dict的incr方法
目的用于给共享内存中的kv对的v的值进行自增案例lua_shared_dict设置一块共享内存区域,可以被各个worker共享写在http模块中比如下面这个,表示设置了一块共享的内存区域,大小为10m. lua_shared_dict sdata 10m; -- 获取共享内存的dict对象local x=ngx.shared.sdata-- 在共享内存里放个kv对x:set("a",1)-- 给共享内存中的这个对象的值增加2x:incr("a",2)ngx.say("STORED原创 2020-12-11 21:23:53 · 1127 阅读 · 0 评论 -
nginx之lua_shared_dict命令
lua_shared_dict设置一块共享内存区域,可以被各个worker共享写在http模块中比如下面这个,表示设置了一块共享的内存区域,大小为10m. lua_shared_dict sdata 10m;设置了这里面就可以存数据了,怎么读写数据呢?有set和get方法,直接可以往这块共享内存写数据测试一下测试代码写在外部lua文件中,这里引入一下 server { listen 80; server_name localhost;原创 2020-12-11 21:08:23 · 9072 阅读 · 0 评论 -
lua 面向对象入门
举个例子-- 元类Shape = {area = 0}-- 基础类方法 newfunction Shape:new (o,side) o = o or {} setmetatable(o, self) self.__index = self side = side or 0 self.area = side*side; return oend-- 基础类方法 printAreafunction Shape:printArea () p原创 2020-12-11 13:51:32 · 104 阅读 · 0 评论 -
openresty lua集成kafka
首先修改openresty的配置文件中localtion位置,引入外部lua文件,这样修改lua文件会比较方便 location / { default_type text/html; content_by_lua_file /usr/local/openresty/tmp.lua; }案例1 先获取kafka的实例2 通过实例获取连接3设置分区发送策略4可以读取和写入操作5查看结果...原创 2020-12-11 11:33:30 · 1126 阅读 · 1 评论 -
lua操作redis
首先修改openresty的配置文件中localtion位置,引入外部lua文件,这样修改lua文件会比较方便 location / { default_type text/html; content_by_lua_file /usr/local/openresty/tmp.lua; }原创 2020-12-11 10:22:27 · 252 阅读 · 0 评论 -
idea配置Lua环境
安装Lua插件Lua插件右键新建Lua文件设置配置添加解释器取官网下载一个exe即可http://luabinaries.sourceforge.net/原创 2020-12-10 19:40:52 · 1118 阅读 · 1 评论 -
Lua数据类型入门
数字数字类型表示实数(双精度浮点)数字。Lua 没有整数类型,因为它不需要它。对浮点算术误差存在普遍的误解,有些人担心,即使是简单的增量,浮点数字也可能会变得怪异。事实是,当您使用双精度值表示整数时,没有任何舍入错误(除非数字大于 100,000,000,000,000,000)。具体地说,Lua 数字可以表示任何长整数,而不会出现舍入问题。此外,大多数现代 CPU 的浮点算术速度与整数算术一样快(甚至更快)数字只有一种类型,就是默认双精度!print(type(2)) --numberprint原创 2020-12-10 19:24:34 · 340 阅读 · 0 评论 -
Lua语法入门
查看类型print(type("What is my type")) --> stringt = 10print(type(5.8*t)) --> numberprint(type(true)) --> booleanprint(type(print)) --> functionprint(type(nil)) --> nilprint(typ原创 2020-12-10 16:53:27 · 134 阅读 · 0 评论