码迷,mamicode.com
首页 > 其他好文 > 详细

Nginx 之Tengine limit_req模块模块测试

时间:2014-12-24 20:00:59      阅读:845      评论:0      收藏:0      [点我收藏+]

标签:

  最近有机会接触Tengine,官方文档连接:http://tengine.taobao.org/index_cn.html。

  关于Tengine的简介如下:

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

  从2011年12月开始,Tengine成为一个开源项目,Tengine团队在积极地开发和维护着它。Tengine团队的核心成员来自于淘宝搜狗等互联网企业。Tengine是社区合作的成果,我们欢迎大家参与其中,贡献自己的力量。

  而关于Tengine limit_req的模块文档链接:http://tengine.taobao.org/document_cn/http_limit_req_cn.html。

  一下步骤为本人自己测试实验,简介如下:

  

  1. 下载Tengine 

  2. http://tengine.taobao.org/
  3. Nginx编译选项

  ./nginx -V

  nginx version: nginx/1.4.4

  built by gcc 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) 

  configure arguments: --prefix=/usr/local/nginx --with-http_gzip_static_module --with-http_stub_status_module --with-pcre=/root/install/pcre-8.32/ --with-    zlib=/root/install/zlib-1.2.8

    3.  安装lib

     yum install -y pcre-devel

  yum install -y openssl-devel

     4.  备份nginx

     5.  编译Tengine

  ./configure --prefix=/usr/local/nginx --with-http_gzip_static_module --with-http_stub_status_module 

  make

    make install

      安装完后在nginx.conf文件中做出相应配置改动,重点如下:

  

events {
use epoll;
worker_connections 51200;
}


http {
include mime.types;
default_type application/octet-stream;

log_format main ‘$remote_addr - $remote_user [$time_local] "$request" ‘
‘$status $body_bytes_sent "$http_referer" ‘
‘"$http_user_agent" "$http_x_forwarded_for"‘;

access_log logs/access.log main;

sendfile on;
tcp_nopush on;

#keepalive_timeout 0;
keepalive_timeout 65;

gzip on;
#limit_req_zone $binary_remote_addr zone=lrz_ip:3m rate=2r/s;
#limit_req_zone $binary_remote_addr zone=lrz_url:10m rate=1r/s;

server {
listen 80;
server_name 127.0.0.1;

charset utf-8;

access_log logs/host.access.log main;

location / {
root html;
index index.html index.htm ;
#limit_req zone=lrz_ip burst=5;
#limit_req zone=lrz_url burst=1 nodelay;
}

  红色字体为对Tengine limit_req的模块设置相应规则,文档都有说明的,还是比较简单的。(注意:配置文件更改后要重启nginx服务)

  在此测试过程中使用Apache的ab压力测试工作模拟访问请求(简单测试可以将对应参数适当地调低),看看访问限制结果。

  最后结果如下:

技术分享

 

技术分享

 

  与君共勉,加油!!!

Nginx 之Tengine limit_req模块模块测试

标签:

原文地址:http://www.cnblogs.com/Tony-zhangl/p/4182993.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!