nginx插件ngx_lua

ngx_lua是淘宝的维护的产品,真心不错。配置文件包含可以做很多事情的lua脚本。

公司有个产品对注册的广告盒子进行反向代理,这样可以在盒子上做很多事情:和服务器通信,远程控制盒子等等。nginx反向代理这些盒子,都是在nginx的配置文件里边配置的。这个配置是要用程序进行生成。越来越多的程序没办法安置了,越来越多。终于在配置文件超过了260多个的时候,出现了超出了bucket。。。。这又要修改其他的配置文件。这没个头了。。。

推荐使用配置嵌入lua脚本,有什么好处呢?反向代理内容可以放在redis里边,通过lua访问redis,通过以host为key的get方式,获取实际的IP,对盒子进行方向代理。这样nginx的反向代理的bucket是实时,即时生成的,不会有超出bucket的问题。

这样对生成配置文件的程序来说,这个更好了。读写redis,可是比分析文件可简单多了。

问题少了很多,也容易维护了,心情也好多了。

时间: 2024-10-16 14:58:10

nginx插件ngx_lua的相关文章

nginx使用ngx_lua访问后端Thrift-Server实现和介绍

背景 随着openresty的出现,让nginx使用lua解决一些业务的能力大幅度提高,ngx_lua可以使用nginx自生的基于事件驱动的IO模型,和后端的存储,业务等系统实现非阻塞的连接交互. 如何使用ngx_lua连接后端的Thrift-Server呢? 基于这个需求,本人为ngx_lua做了一下增强. 增强后的业务架构图 前端使用http对外提供服务,将请求的数据调用ngx_lua逻辑,使用定义好的Thrift的IDL文件生成lua代码,调用Thrift的服务,实现业务逻辑. 开源实现g

Nginx负载均衡优化插件编译及配置

一. Ngix依赖模块安装 Ngix依赖模块有:pcre.zlib.openssl.md5 /sha1(如果系统中没有安装相应模块,需要按照下列方式安装) 1. 安装pcre模块(8.35) 官方网站:http://www.pcre.org/ 安装命令: # unzip pcre-8.35.zip # cd pcre-8.35 # ./configure # make && make install 在64位linux系统中,nginx搜索的库位置为lib64:所以,需要建立软连接: #

NGINX安全防护之基于ngx_lua的web应用防火墙

NGINX安全防护 ngx_lua_waf安装说明文档 作者github地址: https://github.com/loveshell/ngx_lua_waf 转自作者说明文档: ngx_lua_waf是我一个基于ngx_lua的web应用防火墙. 代码很简单,开发初衷主要是使用简单,高性能和轻量级. 现在开源出来.其中包含我们的过滤规则.如果大家有什么建议和想fa,欢迎和我一起完善.   用途: 用于过滤post,get,cookie方式常见的web攻击 防止sql注入,本地包含,部分溢出,

ngx_lua 模块安装

一.使用环境 1.Nginx v1.11.2 2.Lua jit v2.0.4 3.ngx_lua_module v0.10.8 4.NDK v0.3.0 注:目前ngx_lua模块对Nginx支持版本最高为(1.11.2).文章时间(2017年4月24日16:07:36) 二.相关软件下载地址 1.Nginx [http://nginx.org/] 2.Lua Jit [http://luajit.org/download.html] 3.ngx_lua_module [https://git

IntelliJ IDEA+Tomcat+Nginx运行git项目

1.克隆Git项目到本地 (1)设置Git工具路径:file>settings>Version Control>Git (2)设置GitHub账户:file>settings>Version Control>GitHub (3)克隆git项目 VCS>Checkout from Version Control>GitHub 2.配置Tomcat 3.配置Nginx插件 (1)下载安装插件 file>settings>Pluginx>Brow

如何在 CentOS 7 用 cPanel 配置 Nginx 反向代理

导读 Nginx 是最快和最强大的 Web 服务器之一,以其高性能和低资源占用率而闻名.它既可以被安装为一个独立的 Web 服务器,也可以安装成反向代理 Web 服务器.在这篇文章,我将讨论在安装了 cPanel 管理系统的 Centos 7 服务器上安装 Nginx 作为 Apache 的反向代理服务器.Nginx 作为前端服务器用反向代理为静态文件提供服务,Apache 作为后端为动态文件提供服务.这个设置将整体提高服务器的性能. 让我们过一遍在已经安装好 cPanel 11.52 的 Ce

nginx记录分析网站响应慢的请求(ngx_http_log_request_speed)

nginx模块ngx_http_log_request_speed可以用来找出网站哪些请求很慢,针对站点很多,文件以及请求很多想找出哪些请求比较慢的话,这个插件非常有效.作者的初衷是写给自己用的,用来找出站点中处理时间较长的请求, 这些请求是造成服务器高负载的很大根源. 日志记录之后,在使用perl脚本分析日志,即可知道哪些请求需要修正. 1. 模块安装 nginx第三方模块安装方法,我们ttlsa.com已经说过很多次了,我这边不在重复了.配置参数 1 2 ./configure --pref

使用Nginx做转发和匹配替换

Nginx是一个强大的服务器软件,由于处理数据内容处于第七层协议应用层的原因,所以获取的数据也比较完整: Nginx做转发: 这个很简单,vi nginx.conf(编辑nginx配置文件) 添加location /public/sexy.jpg{//这个是你域名访问的图片 proxy_pass http://www.tmp.jpg;#这个是你要替换的图片路径(加上http头) } 保存退出,重启nginx 就可以看到原本项目 http://xxx/public/sexy.jpg变成了http:

Nginx+Tomcat+Memcached集群

Tomcat集群session同步方案有以下几种方式: 使用tomcat自带的cluster方式,多个tomcat间自动实时复制session信息,配置起来很简单.但这个方案的效率比较低,在大并发下表现并不好.原理:http://zyycaesar.iteye.com/blog/296606 利用nginx的基于访问ip的hash路由策略,保证访问的ip始终被路由到同一个tomcat上,这个配置更简单.但如果应用是某一个局域网大量用户同时登录,这样负载均衡就没什么作用了. 利用nginx插件实现