Openresty 与 Tengine
Openresty和Tengine基于 Nginx 的两个衍生版本,某种意义上他们都和淘宝有关系,前者是前淘宝工程师agentzh主导开发的,后者是淘宝的一个开源项目;
Openresty的最大特点是引入了ngx_lua模块,支持使用lua开发插件;
Tengine的特点是融入了因淘宝自身的一些业务带来的新功能;
Tengine 简介
tengine官方网站:http://tengine.taobao.org/index_cn.html
在 Nginx官方版本的基础上增加的一些定制模块如下:
1、支持动态加载模块:通过加载so文件实现,不用再重新编译整个项目了,配置如下:
dso {load ngx_http_lua_module.so;load ngx_http_memcached_module.so; }
2、ngx_proc_daytime_module模块,这个模块允许开一个独立的服务进程,该模块本身并未实现具体的业务逻辑,而是构建了一个TCP Server框架,等待开发者来实现自己的业务;
3、ngx_http_concat_module模块,用于合并多个文件的响应;
4、ngx_http_upstream_session_sticky_module模块,该模块是一个负载均衡模块,通过cookie实现客户端与后端服务器的会话保持, 在一定条件下可以保证同一个客户端访问的都是同一个后端服务器。
5、ngx_http_upstream_check_module模块,用于检查upstream上游服务器的健康状况,如下是一个配置的例子:
upstream cluster1 {# simple round-robinserver 192.168.0.1:80;server 192.168.0.2:80;check interval=3000 rise=2 fall=5 timeout=1000 type=http;check_http_send "HEAD / HTTP/1.0\r\n\r\n";check_http_expect_alive http_2xx http_3xx;}
6、trim filter模块,用于删除 html,内嵌 javascript 和 css 中的注释以及重复的空白符,例如:
location / {trim on;trim_js on;trim_css on; }
7、ngx_http_headers_module模块,支持根据Content-Type来设置过期时间,例如:
expires_by_types 24h text/html;expires_by_types modified +24h text/xml;expires_by_types @15h30m text/xml;expires_by_types 0 text/xml;expires_by_types -1 text/xml;expires_by_types epoch text/xml;
8、ngx_http_limit_req_module模块,限制访问
9、扩展了ngx_http_log_module模块,支持syslog和pipe;
转载于:https://www.cnblogs.com/xiaoleiel/p/8295800.html
Openresty 与 Tengine相关推荐
- 国产最强开源 API 网关,没有之一,不接受任何反驳!
以下文章来源方志朋的博客,回复"666"获面试宝典 " 这篇文章由刚哥授权分享,刚哥是 Splunk Information Technology 的架构师,Linked ...
- 悠悠二十载,Nginx创始人Igor宣布离职
2002年春季,Igor Sysoev迈上了Nginx的开发之旅.面对互联网的早期飞速发展,他希望提出一种更好的网络流量处理方式--这将是一种新颖的架构,能够让高流量网站更从容地处理数万个并发连接,并 ...
- 2021年8月Web服务器排行榜:Nginx牛市上升
自2019年4月全球Web服务器排名 nginx首度登顶后,这回再次准备冲顶. 在2021年8月的调查中,NETCRAFT收到了来自1,211,444,849个站点的回复,这些站点涉及263,733, ...
- nginx documentation | Development guide
Table of Contents nginx documentation Development guide Nginx distributions ▪️ OpenResty ▪️ The Te ...
- Httpclient gzip 乱码问题解决
■出现问题的原因推测 被反爬了,缺少了cookie,你请求出来的信息就是运行一段js, 生成cookie,看到args1了么,这个是密钥,下面的也不是编码的,就是js混淆的问题 防爬网站需要携带一些基 ...
- 「Nginx实战」中学到的东西用在面试上,面试官都被怼得哑口无言
Nginx到底是什么? Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务.Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的http://Rambl ...
- Open Source
资源来源于http://www.cnblogs.com/Leo_wl/category/246424.html RabbitMQ 安装与使用 摘要: RabbitMQ 安装与使用 前言 吃多了拉就是队 ...
- 国产最强开源 API 网关
强烈推荐大家试试国产开源的 API 网关 https://github.com/apache/apisix,非常不错. 快速入门的文章,可以看看艿艿之前写的 https://www.iocoder.c ...
- nginx的安装(亲测)
先安装虚拟机,和cnetos7mini版本 虚拟机的安装省略,可以参考前面: 注意:centos7之前是ipconfig查看网络,7以后就变成ip addr 本地的网卡:IO,虚拟出来的网卡是eno1 ...
- Do Svidaniya,向 NGINX 创始人 Igor 致敬
原文作者:Rob Whiteley, F5 NGINX 事业部总经理 原文链接:Do Svidaniya,向 NGINX 创始人 Igor 致敬 - NGINX 转载来源:NGINX官方网站 我们满怀 ...
最新文章
- linux亲和性,两种亲和性
- SQL基础操作_2_操作多个表
- 并发编程中常见的锁机制:乐观锁、悲观锁、CAS、自旋锁、互斥锁、读写锁
- 奔跑吧linux内核_别了,Linux 的魔法时代!
- java 面试 概率论_编程培训-115个Java面试题和答案B.pdf
- 深入剖析.NETCORE中CORS(跨站资源共享)
- AWS的VPC使用经验(一)
- 2020年最新程序员职业发展路线指南,超详细!
- 喜欢独自喝茶的人是什么样的人
- day1 java基础回顾-	文件路径
- python下载网易云音乐付费歌曲有哪些_Python3批量下载网易云音乐热歌榜
- [Fondar]手机屏幕驱动板HDMI接口USB触摸使用步骤
- win10资源管理器打开缓慢,自动搜索
- iOS性能优化系列篇之“优化总体原则”
- 计算机炫酷功能,【实用】上班族必备!10个实用电脑炫酷小技巧~
- iis服务器版本信息泄漏,IIS短文件和文件夹泄漏漏洞
- 从数字0~99999中,数字“8”一共出现了多少次
- CentOS 7 ping不通提示“Name or service not kown“的解决办法
- onClick事件的三种写法
- Java新生代垃圾收集器
热门文章
- Eclipse配Tomcat服务器
- 自动拼图android github,GitHub - zero0011/Puzzle: 拼图游戏 , 可自动实现 拼图操作
- Redo Log的逻辑与物理结构
- Spark内存空间分配机制
- 了解一个新技术和技术点的时候需要了解的事情
- SQLserver nText和varchar 不兼容
- 巴基斯坦削减光伏发电上网电价或影响清洁能源发展前景
- eclipse导入maven项目时报Could not calculate build plan: Plugin org.apache.maven.plugins:maven-resources...
- performSelector:withObject:afterDelay: 的用法
- 个人网络安全从业心得