Tengine – Nginx衍生版

Tengine是淘宝在Nginx基础上开发的一个衍生版。官方的简介说针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验。它的最终目标是打造一个高效、稳定、安全、易用的Web平台。

Tengine官网:http://tengine.taobao.org/

Tengine特性

  • 继承Nginx-1.2.9的所有特性,100%兼容Nginx的配置;
  • 动态模块加载(DSO)支持。加入一个模块不再需要重新编译整个Tengine;
  • 流式上传到HTTP后端服务器或FastCGI服务器,大量减少机器的I/O压力;
  • 更加强大的负载均衡能力,包括一致性hash模块、会话保持模块,还可以对后端的服务器进行主动健康检查,根据服务器状态自动上线下线;
  • 输入过滤器机制支持。通过使用这种机制Web应用防火墙的编写更为方便;
  • 动态脚本语言Lua支持。扩展功能非常高效简单;
  • 支持管道(pipe)和syslog(本地和远端)形式的日志以及日志抽样;
  • 组合多个CSS、JavaScript文件的访问请求变成一个请求;
  • 自动去除空白字符和注释从而减小页面的体积
  • 自动根据CPU数目设置进程个数和绑定CPU亲缘性;
  • 监控系统的负载和资源占用从而对系统进行保护;
  • 显示对运维人员更友好的出错信息,便于定位出错机器;
  • 更强大的防攻击(访问速度限制)模块;
  • 更方便的命令行参数,如列出编译的模块列表、支持的指令等;
  • 可以根据访问文件类型设置过期时间;

Tengine已经加到lnmp最新源码一键安装包

pcre安装

cd lnmp/src
wget http://ftp.cs.stanford.edu/pub/exim/pcre/pcre-8.33.tar.gz
tar xzf pcre-8.33.tar.gz
cd pcre-8.33./configure
make && make install
cd ../

Tengine安装

wget http://tengine.taobao.org/download/tengine-1.5.1.tar.gz
tar xzf tengine-1.5.1.tar.gz
cd tengine-1.5.1#修改下显示的版本号
sed -i 's@TENGINE "/" TENGINE_VERSION@"Tengine/unknown"@' src/core/nginx.h
#修改 auto/cc/gcc 文件,禁用编译 debug 能减少编译后的容量
sed -i 's@CFLAGS="$CFLAGS -g"@#CFLAGS="$CFLAGS -g"@' auto/cc/gcc
./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --with-http_flv_module --with-http_gzip_static_module --with-http_concat_module=shared --with-http_sysguard_module=shared
make && make install

模块文档参考:http://tengine.taobao.org/documentation_cn.html

Tengine下安装ngx_pagespeed

wget https://dl.google.com/dl/page-speed/psol/1.6.29.5.tar.gz
wget --no-check-certificate https://github.com/pagespeed/ngx_pagespeed/archive/release-1.6.29.5-beta.zip
unzip -q release-1.6.29.5-beta
tar xzf 1.6.29.5.tar.gz -C ngx_pagespeed-release-1.6.29.5-beta
cd ../ngx_pagespeed-release-1.6.29.5-beta

方式一:

/usr/local/nginx/sbin/dso_tool --add-module=../ngx_pagespeed-release-1.6.29.5-beta

在/usr/local/nginx/modules下会生成ngx_pagespeed.so,dso段load进去

方式二:

./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module \
--with-http_ssl_module --with-http_flv_module --with-http_gzip_static_module \
--with-http_concat_module=shared --with-http_sysguard_module=shared \
--add-module=../ngx_pagespeed-release-1.6.29.5-beta
make && make install

原文:http://blog.linuxeye.com/357.html

上一篇:js改变盒子大小(上下左右)分析


下一篇:自动化运维工之Ansible(1)