对于开发来说需要有好的生态开发库来辅助我们快速开发,而Lua中也有大多数我们需要的第三方开发库如Redis、Memcached、Mysql、Http客户端、JSON、模板引擎等。一些常见的Lua库可以在github上搜索,https://github.com/search?utf8=%E2%9C%93&q=lua+resty。 Redis客户端lua-resty-redis是为基
转载
2023-08-11 10:26:49
276阅读
一、lua中redis的配置依赖:1、OpenResty的lua访问redis的插件:https://github.com/openresty/lua-resty-redis二、下载后,导入对应的插件: lua_package_path "/opt/openresty/lualib/kafka/?.lua;;"; lua_need_request_body on;三、lua代码2、使用lua
转载
2023-07-06 20:57:50
103阅读
(本篇所有测试用例均在 lua5.3.4 环境下测得)1、Table原理:1、Lua 实现表的算法颇为巧妙。每个表包含两部分:数组(array)部分和哈希(hash)部分,数组部分保存的项(entry)以整数为键(key),从 1 到某个特定的 n,(稍后会讨论 n 是怎么计算的。)所有其他的项(包括整数键超出范围的)则保存在哈希部分。顾名思义,哈希部分使用哈希算法来保存和查找键值。它使用的是开放
OpenResty 发展起源OpenResty(也称为 ngx_openresty)是一个全功能的 Web 应用服务器。它打包了标准的 nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项。 通过揉和众多设计良好的 nginx 模块,OpenResty 有效地把 nginx 服务器转变为一个强大的 Web 应用服务器,基于它开发人员可以使用 lua 编程语言对 nginx 核心以及现有
当了解web访问原理后,与前端工程师或页面重构师工作更为关系密切的应该是浏览器,WEB 页面运行在各种各样的浏览器当中,浏览器载入、渲染页面的速度直接影响着用户体验, 特别是浏览器渲染页面的原理,页面渲染就是浏览器将 HTML 代码根据 CSS 定义的规则显示在浏览器窗口中的这个过程,理解了原理就更会容易理解前端优化的一些准则。主要过程:用户输入网址(假设是个 HTML 页面,第一次访问,无缓存情
一、OpenResty介绍OpenResty(又称:ngx_openresty) 是一个基于 nginx的可伸缩的 Web 平台,由中国人章亦春发起,提供了很多高质量的第三方模块。 OpenResty 是一个强大的 Web 应用服务器,Web 开发人员可以使用 Lua 脚本语言调动 Nginx 支持的各种 C 以及 Lua 模块,更主要的是在性能方面,OpenResty可以 快速构造出足以胜任 1
转载
2023-07-12 14:12:06
169阅读
分布式缓存下图是分布式缓存应用设计中常见的架构,该架构采用redis集群作分布式缓存。接入层nginx+lua读取本地缓存;如果缓存没有命中,则接入层会接着读取分布式redis集群的缓存;如果还是没有命中,则会回溯到服务集群中应用的本地缓存;如果还是没有命中,则会调用依赖服务获取数据,同时异步写入到redis集群中;场景是不是所有项目的分布式缓存都是这样设计的呢?答案当然不是,这只是设计的雏形,在
在上一篇博客中我们提到过,OpenStack每个项目内部的服务进程之间是通过消息总线来通讯的,而在各个项目之间则是通过RESTful API来进行通讯的,在这一篇博客中,我们就来详细的讨论一下OpenStack各个项目之间的通讯。一、什么是RESTfulRESTful是目前最流行的一种互联网软件架构。REST(Representational State Transfer,表述性状态转移),如
openresty/lua-resty-shell 是当前最新rc 版本内置的shell 功能,我们可以用来执行一个脚本,以及命令 还是比较方便的。 测试集成了一个oreilly电子书下载的功能 环境准备 docker-compose 文件 version: "3" services: nginx:
原创
2021-07-17 21:22:11
878阅读
github:https://github.com/doujiang24/lua-resty-kafka安装该客户端是使用纯lua脚本写的,借助了openresty的cosocket api实现了非阻塞IO。
原创
2022-06-19 21:03:36
5430阅读
目的:需要记录用户真实IP + 访问量可以查看configure 可选参数说明:安装模块主要用于记录关键信息,例如:ip和访问次数。
1. 安装 luarocks install lua-resty-template 2. 使用 luarocks install lua-resty-template 2. 使用 配置模板页面位置 有多种方式: a. 直接使用root 目录 代码如下: location /{ root html;
原创
2021-07-17 23:23:42
865阅读
lua-resty-repl 是一个方便的openresty 包,我们可以用来方便的调试openresty 以下是一个基于容器运行的一个试用 环境准备 dockerfile 主要是安装模块以及一个supervisord(方便运行的,使用此接管1号进程) FROM openresty/openrest
原创
2021-07-18 18:49:21
439阅读
已经写过一个openresty 使用lua-resty-shell 执行shell 脚本的demo,但是实际上我们可能是多节点运行, 同时需要负载均衡的机制。 lua-resty-shell 支持unix socket 以及tcp soket 的管理,但是在测试的时候发现tcp 有问题,所以只好 使
原创
2021-07-19 16:17:43
359阅读
Lua和OpenResty的模板引擎(HTML)模板语法您可以在模板中使用以下标签:{{expression}},写入表达
原创
2023-02-21 09:24:24
172阅读
lua-resty-qless-web 是 lua-resty-qless 的web 管理界面以及lua-resty-template 模版引擎开发的,里面实现了一个简单的 路由功能 备注: demo 运行使用docker-compose ,简单修改了官方demo 有问题的部分,后边会添加集成lua
原创
2021-07-19 15:53:23
402阅读
Lua和OpenResty的模板引擎(HTML) 模板语法 您可以在模板中使用以下标签: {{expression}},写入表达式的结果 - html转义 {*expression*},写入表达结果 {% lua code %},执行Lua代码 {(template)},包括template文件,您
原创
2021-06-05 10:10:30
422阅读
1 功能使用实现在局域网中使用 http://www.mason.com访问主机A。在局域网实现DNS的正向解析和反向解析。正向解析是通过域名查找ip。反向解析是通过ip查找域名。注意:如果仅仅在局域网里使用,不考虑安全性,可以省略下面配置bind-chroot和反向解析,仅仅配置bind即可。 2 安装bind# 使用yum安装bind,安装成功后会显示 Complete
# BIND
resty-redis-cluster下载地址
https://github.com/steve0511/resty-redis-cluster
转载
2023-07-11 20:18:17
30阅读
lua-resty-shell 是一个很不错的项目,让我们可以无阻塞的执行shell命令,之间的通信 是通过socket (一般是unix socket) 环境准备 docker-compose 文件 version: "3" services: app: build: ./ ports: - "8
原创
2021-07-19 16:17:45
1559阅读