一、缓存架构OpenResty 和 Redis 实现缓存架构,如下图所示:   1) 当请求过来时,先查找 Nginx 缓存,若缓存存在需要的数据,则直接返回。否则进入第二步;   2) 若 Nginx 缓存模块中不存在数据,则通过 Lua 脚本查询 Redis。若 Redis 中存在数据,则通过 Lua 脚本将数据存入 Nginx 缓存中,并返回查询到的数据。否则进入第三步;   3) 若 Re
转载 2024-02-26 15:52:25
193阅读
背景:由于我们项目上都是安装和使用openresty,而我们组也有一些依托openresty软件来做的应用。但是我们现在部署工作都是使用自研的一键部署平台(也是波哥主导开发的)底层用的ansible来实现的。单独开源出来的playbook不一定适用各位。所以花了点时间写了一份更通用的shell脚本以便大家使用。结合读者对于上一篇《一键部署nginx脚本》的意见我增加了版本变量,可以在执行脚本的时
转载 2024-05-06 11:08:02
121阅读
一、资源准备在这里向你推荐一下OpenResty 一个Nginx全能插件版, 是淘宝一位大牛(agentzh)集成的包含N多好插件的Nginx捆绑源码包,这位仁兄自称Nginx最活跃的第三方模块开发人员 下面列一下OpenResty集成模块:LuaJIT -- 极速版Lua实现ArrayVarNginxModule -- 数组类型的Ng
转载 8月前
60阅读
OpenResty 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。可以自己写LUA脚本实现大部分的WEB功能。Nginx不依赖第三库的默认功能包括反向代理负载均衡HTTP服务器正向代理我们可以看到,其默认的功能很强大,但是我们也会偶尔有特殊的需求,需要根据需求来定制一些路由规则等等,因此就用到了OpenResty,这里
转载 2024-04-04 09:00:57
68阅读
1、Lua简介因为项目使用开发使用接触到了lua进行开发。所以在学习中进行了整理记录。Lua是一种很轻量级的的脚本语言,用标准C语言编写的并以源代码形式开放,其设计的目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。为什么使用Lua?Lua很重要的一个功能就是很方便的集成到应用程序内,lua可以直接在运行程序内运行,可以理解为不需要编译过程。比如使用java开发的应用程序,一般在应
OpenResty 最佳实践 https://moonbingbing.gitbooks.io/openresty-best-practices/content/    OpenResty 最佳实践在 2012 年的时候,加入到奇虎 360 公司,为新的产品做技术选型。由于之前一直混迹在 Python 圈子里面,也接触过 Nginx C 模块的高性能开发,一
resty和nginx-lua脚本/ 转载请注明:sunny51562017年08月07日于技术人生-孙强发表ZeroBrane Studio已被用于调试各种Lua引擎 – 游戏框架(如Corona,Gideros,Moai,Love2d)...
转载 2023-01-05 16:44:09
581阅读
首先我们选择使用OpenResty,其是由Nginx核心加很多第三方模块组成,其最大的亮点是默认集成了Lua开发环境,使得Nginx可以作为一个Web Server使用。借助于Nginx的事件驱动模型和非阻塞IO,可以实现高性能的Web应用程序。而且OpenResty提供了大量组件如Mysql、Redis、Memcached等等,使在Nginx上开发Web应用更方便更简单。目前在京东如实时价格、秒
转载 2024-03-27 10:36:06
132阅读
ngx.var.arg_strider的值为”1”,而ngx.req.get_uri_args[“strider”]的值为table [“1”, “2”, “3”, “4”]。重写阶段、访问限制阶段、内容处
原创 精选 2024-03-27 16:23:40
506阅读
1点赞
1评论
1.openresty(Nginx+Lua)的简介和安装1.1 什么是openrestyOpenResty 是一个基于 Nginx与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。 OpenResty通过汇聚各种设计精良的 Nginx模块(主要由 OpenRe
转载 2024-03-19 11:29:49
132阅读
不加 local 的变量会在全局表中查找,这是昂贵的操作。如果再加上一些变量名的拼写错误,就会造成难以定位的 bug。可以把 s 这个包含函数的字符串,改成可以由
原创 2024-07-21 15:30:00
224阅读
lua-resty-shell 是一个很不错的项目,让我们可以无阻塞的执行shell命令,之间的通信 是通过socket (一般是unix socket) 环境准备 docker-compose 文件 version: "3" services: app: build: ./ ports: - "8
原创 2021-07-19 16:17:45
1640阅读
openresty开发系列31--openresty执行流程我们先看个例子location /test { set $a 32; echo $a; set $a 56; echo $a; }echo nginx第三方模块,是用于做响应输出输出了 56Nginx 处理每一个用户请求时,都是按照若干个不同阶段依次处理的。而不是根据配置文件上的顺序。之上的例子 涉及到了
转载 2024-07-21 08:25:46
180阅读
原创 2021-07-06 15:32:34
326阅读
原创 2022-01-19 15:30:29
264阅读
OpenResty配置Nginx读取Lua脚本1. 安装OpenResty2.安装nginx3.修改nginx配置文件(nginx.conf)4. Lua+Nginx配置1. 安装OpenResty可参考
原创 2021-09-08 14:54:20
3560阅读
编写Lua脚本路径在/lua/hello.lua编写 hello.lua 内容: ngx.say("hello, world")[root@zjj101 lua]# pwd/lua[ro
原创 2022-07-04 20:52:08
238阅读
什么是OpenResty天下武功,为快不破。Nginx 的看家本领就是速度,Lua 的拿手好戏亦是速度,这两者的结合在速度上无疑有基因上的优势。最先将 Nginx,Lua 组合到一起的是 OpenResty,它有一个 ngx_lua 模块,将 Lua 嵌入到了 Nginx 里面。本教程从环境搭建到实战讲解,逐步向读者展示如何使用 Nginx+Lua 框架进行开发。 使用场景先看一下官网的解释在 L
转载 2024-03-19 14:04:37
152阅读
redis的连接是tcp连接,建立TCP连接需要三次握手,而释放TCP连接需要四次握手,而这些往返时延仅需要一次,但A
原创 2024-03-27 16:23:28
341阅读
客户端目前还没有提供预编译SQL支持(即占位符替换位置变量),我们编写个案例,操作mysql数据库,编辑test.lua。默认安
原创 2024-03-27 17:22:14
117阅读
  • 1
  • 2
  • 3
  • 4
  • 5