近期公司需要做nginx 相关的调优及二级开发,最终技术选型Tengine,相信很多朋友对它还比较陌生,这里我们先简单介绍一下Tengine。
官网地址 :http://tengine.taobao.org/
GitHub :https://github.com/alibaba/tengine
简介
Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验。它的最终目标是打造一个高效、稳定、安全、易用的Web平台。
从2011年12月开始,Tengine成为一个开源项目,Tengine团队在积极地开发和维护着它。Tengine团队的核心成员来自于淘宝、搜狗等互联网企业。Tengine是社区合作的成果,我们欢迎大家参与其中,贡献自己的力量。
特性
- 继承Nginx-1.8.1的所有特性,兼容Nginx的配置;
- 动态模块加载(DSO)支持。加入一个模块不再需要重新编译整个Tengine;
- 支持HTTP/2协议,HTTP/2模块替代SPDY模块;
- 流式上传到HTTP后端服务器或FastCGI服务器,大量减少机器的I/O压力;
- 更加强大的负载均衡能力,包括一致性hash模块、会话保持模块,还可以对后端的服务器进行主动健康检查,根据服务器状态自动上线下线,以及动态解析upstream中出现的域名;
- 输入过滤器机制支持。通过使用这种机制Web应用防火墙的编写更为方便;
- 支持设置proxy、memcached、fastcgi、scgi、uwsgi在后端失败时的重试次数
- 动态脚本语言Lua支持。扩展功能非常高效简单;
- 支持按指定关键字(域名,url等)收集Tengine运行状态;
- 组合多个CSS、JavaScript文件的访问请求变成一个请求;
- 自动去除空白字符和注释从而减小页面的体积
- 自动根据CPU数目设置进程个数和绑定CPU亲缘性;
- 监控系统的负载和资源占用从而对系统进行保护;
- 显示对运维人员更友好的出错信息,便于定位出错机器;
- 更强大的防攻击(访问速度限制)模块;
- 更方便的命令行参数,如列出编译的模块列表、支持的指令等;
- 可以根据访问文件类型设置过期时间;
- ……
安装
好了,废话不多说,让我们开始安装Tengine
1.首先下载 Tengine 到服务器
wget http://tengine.taobao.org/download/tengine-2.2.0.tar.gz
2.解压至 安装目录
tart -xvf tengine-2.2.0.tar.gz
3.安装
./configure
这个时候 可能会遇到下面的问题
是因为缺少依赖 ,安装就好
yum -y install gcc gcc-c++ autoconf automake make
然后可能会遇到如下问题:
同样 安装就好
yum -y install pcre-devel
还有如下问题
同样安装
yum -y install openssl openssl-devel
okay 然后继续./configure
继续 make
继续 make install
至此 我们就算是安装成功了
默认的目录在/usr/local/nginx 下面,当然,你也可以用--prefix 指定目录
让我们尽情体验一下吧。