简介
Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验。它的最终目标是打造一个高效、稳定、安全、易用的Web平台。从2011年12月开始,Tengine成为一个开源项目,Tengine团队在积极地开发和维护着它。Tengine团队的核心成员来自于淘宝、搜狗等互联网企业。Tengine是社区合作的成果,我们欢迎大家参与其中,贡献自己的力量。
特性
- 继承Nginx-1.6.2的所有特性,兼容Nginx的配置;
- 动态模块加载(DSO)支持。加入一个模块不再需要重新编译整个Tengine;
- 支持SO_REUSEPORT选项,建连性能提升为官方nginx的三倍;
- 支持SPDY v3协议,自动检测同一端口的SPDY请求和HTTP请求;
- 流式上传到HTTP后端服务器或FastCGI服务器,大量减少机器的I/O压力;
- 更加强大的负载均衡能力,包括一致性hash模块、会话保持模块,还可以对后端的服务器进行主动健康检查,根据服务器状态自动上线下线,以及动态解析upstream中出现的域名;
- 输入过滤器机制支持。通过使用这种机制Web应用防火墙的编写更为方便;
- 支持设置proxy、memcached、fastcgi、scgi、uwsgi在后端失败时的重试次数
- 动态脚本语言Lua支持。扩展功能非常高效简单;
- 支持管道(pipe)和syslog(本地和远端)形式的日志以及日志抽样;
- 支持按指定关键字(域名,url等)收集Tengine运行状态;
- 组合多个CSS、JavaScript文件的访问请求变成一个请求;
- 自动去除空白字符和注释从而减小页面的体积
- 自动根据CPU数目设置进程个数和绑定CPU亲缘性;
- 监控系统的负载和资源占用从而对系统进行保护;
- 显示对运维人员更友好的出错信息,便于定位出错机器;
- 更强大的防攻击(访问速度限制)模块;
- 更方便的命令行参数,如列出编译的模块列表、支持的指令等;
- 可以根据访问文件类型设置过期时间;
- ……
动态
- [2014-12-19] Tengine-2.1.0 开发版正式发布 (变更列表)
- [2014-05-30] Tengine-2.0.3 开发版正式发布(变更列表)
- [2014-03-28] Tengine-2.0.2 开发版正式发布(变更列表)
- [2014-03-06] Tengine-2.0.1 开发版正式发布(变更列表)
- [2014-01-08] Tengine-2.0.0 开发版正式发布(变更列表)
- [2013-11-22] Tengine-1.5.2 稳定版正式发布(变更列表)
- [2013-08-29] Tengine-1.5.1 稳定版正式发布(变更列表)
- [2013-08-04] 我们受邀在台湾开源人年会上做了《Nginx深度开发与定制》的技术分享
- [2013-07-31] Tengine-1.5.0 稳定版正式发布(变更列表)
- [2013-05-14] Tengine-1.4.6 开发版正式发布(变更列表)
- [2013-05-01] Tengine-1.4.5 开发版正式发布(变更列表)
- [2013-03-21] Tengine-1.4.4 开发版正式发布(变更列表)
- [2013-01-21] Tengine-1.4.3 开发版正式发布(变更列表)
- [2012-11-22] Tengine-1.4.2 开发版正式发布(变更列表)
- [2012-10-10] Tengine-1.4.1 开发版正式发布(变更列表)
- [2012-09-05] Tengine-1.4.0 开发版正式发布(变更列表)
- [2012-07-10] Nginx文档中文翻译项目开始
- [2012-06-28] 我们翻译的Nginx中文文档正式被Nginx官方接受
- [2012-06-09] 我们在华东运维技术大会做了《淘宝网Nginx应用、定制与开发实战》的技术分享
- [2012-05-25] Tengine-1.3.0 稳定版正式发布(变更列表)
- [2012-05-09] Tengine-1.2.5 稳定版正式发布(变更列表)
- [2012-03-30] Tengine-1.2.4 稳定版正式发布(变更列表)
- [2012-03-08] Tengine开发团队开始编写开放书籍《Nginx开发从入门到精通》
- [2012-02-27] Tengine-1.2.3 稳定版正式发布(变更列表)
- [2012-01-11] Tengine-1.2.2 稳定版正式发布(变更列表)
- [2011-12-07] Tengine开发团队在Velocity大会上介绍了《淘宝网Nginx定制实战》的一些经验
- [2011-12-06] Tengine-1.2.1 版本正式发布(变更列表)
- [2011-12-02] Tengine宣布开源
OpenResty (也称为 ngx_openresty)是一个全功能的 Web 应用服务器。它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项。
通过众多进行良好设计的 Nginx 模块,OpenResty 有效地把 Nginx 服务器转变为一个强大的 Web 应用服务器,基于它开发人员可以使用 Lua 编程语言对 Nginx 核心以及现有的各种 Nginx C 模块进行脚本编程,构建出可以处理一万以上并发请求的极端高性能的 Web 应用。
OpenResty 致力于将你的服务器端应用完全运行于 Nginx 服务器中,充分利用 Nginx 的事件模型来进行非阻塞 I/O 通信。不仅仅是和 HTTP 客户端间的网络通信是非阻塞的,与MySQL、PostgreSQL、Memcached、以及 Redis 等众多远方后端之间的网络通信也是非阻塞的。
因为 OpenResty 软件包的维护者也是其中打包的许多 Nginx 模块的作者,所以 OpenResty 可以确保所包含的所有组件可以可靠地协同工作。
agentzh是这样说的:
Tengine 是一个 nginx 的 fork,而 ngx_openresty 是 nginx 的 bundle.
最初两者没有交集,后来Tengine 也是 ngx_openresty 多数核心组件的用户 了,Tengine pdf文档中提到ngx_lua等核心组件也不足为怪了。
需要注意的是agentzh也没有参与到Tengine中去。