前言 Lua 是一种轻量小巧的脚本语言,用标准C语言编写,并开源。 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。 Lua 是巴西里约热内卢天主教大学里的一个研究小组(由Roberto Ieru…
分类:lua教程
根据JWT的key和URL决定是否缓存HTTP请求
链接 https://stackoverflow.com/que… 需求 根据JWT的key和URL决定是否缓存HTTP请求 比如JWT里 payload: { "iss": "iss", "sub": "s…
【API网关Kong系列十】- Rate Limiting
1、前言 在前面我们介绍了Kong的一些内容,包括Key-auth、basic 等插件, 想了解的请移步《企业级API网关Kong系列》本章我们继续其插件之旅,Limit 限流插件的使用。 2、Rate Limiting…
Lua 笔记-lua的与众不同处
不需要 “ ;”分隔符 > a = 1 > b = a + 1 lua中换行不起任何作用。 标识符 可以任意字母,数字和下划线构成,但不能以数字开头。 通常保留标识符一个或者多个“_”下划线和 变量无需声明类…
利用 Lua 的函数式编程简化 lua-resty-redis 的使用
在利用 OpenResty 编写高性能服务的时候,很有可能会使用到 Redis。在 OpenResty 中,我们通常使用 lua-resty-redis 这个模块操作 Redis。 在 lua-resty-redis 的…
lua web快速开发指南(5) - 利用template库构建httpd模板引擎
介绍template 模板引擎是为了使用户界面与业务数据(内容)分离而产生的, 其本身并不是一种深奥的技术. template模板引擎首先会将合法的模板编译为lua函数, 然后将模板文件和数据通过模板引擎生成一份HTML…
【API网关Kong系列六】- 玩转Consumer
1、前景回顾 在【API网关Kong系列三】 – 战前预热 中已经对Consumer的做了介绍,在这我们在来回顾下。Consumer 对象表示服务的使用者或者用户。您可以依靠Kong作为主数据库存储,也可以将…
Lua Web快速开发指南(10) - 利用MQ实现异步任务、订阅/发布、消息队列
本章节我们将学习如何使用MQ库. MQ库简介 MQ库实现了各类消息代理中间件(Message Broker)的连接协议, 目前支持:redis、mqtt、stomp协议. MQ库基于上述协议实现了: 生产者 -> …
lapis的异常处理
lapis的异常处理 错误的种类 Lapis 区分两种错误:可恢复和不可恢复错误。 Lua 的运行时在执行期间抛出的错误或调用错误被认为是不可恢复的。 (这也包括 Lua 内置函数 assert ) 因为不可恢复的错误不…
openresty修改302的location
header_filter_by_lua location /demo { proxy_pass http://localhost:3000/demo ; header_filter_by_lua ' local url…
Lua 学习笔记 (五)—— 基础库函数
基础库为 Lua 提供了一些核心函数。如果没有包含这个库,那么就可能需要自己来实现一些 Lua 语言特性了。 assert (v [, message]) 如果其参数 v 的值为假(nil 或 false), 它就调用 …
lsyncd —— 多机器实时同步文件神器
lsyncd 是一个支持实时、双向、多机器的多模式文件同步工具。 使用 Lua 语言封装了 inotify 和 rsync 工具,采用了 Linux 内核(2.6.13 及以后)里的 inotify 触发机制,然后通过 …