一:简介
OpenResty(又称:ngx_openresty) 是一个基于 NGINX 的可伸缩的 Web 平台,由中国人章亦春发起,提供了很多高质量的第三方模块。
OpenResty 是一个强大的 Web 应用服务器,Web 开发人员可以使用 Lua 脚本语言调动 Nginx 支持的各种 C 以及 Lua 模块,更主要的是在性能方面,OpenResty可以 快速构造出足以胜任 10K 以上并发连接响应的超高性能 Web 应用系统。
360,UPYUN,阿里云,新浪,腾讯网,去哪儿网,酷狗音乐等都是 OpenResty 的深度用户。
二:安装依赖包
#yum install readline-devel pcre-devel openssl-devel gcc
三:安装openresty
3.1下载openresty源码
#wget https://openresty.org/download/openresty-1.9.7.4.tar.gz
3.2解压安装包
#tar xzvf openresty-1.9.7.4.tar.gz
3.3配置编译选项,可以根据你的实际情况增加、减少相应的模块
#cd openresty-1.9.7.4/#./configure --prefix=/opt/openresty --with-luajit --without-http_redis2_module --with-http_iconv_module
3.4编译安装
# make#make install
四:使用
4.1修改配置文件如下# cat /opt/openresty/nginx/conf/nginx.confworker_processes 1;error_log logs/error.log info;events { worker_connections 1024;}http { server { listen 8003; location / { content_by_lua 'ngx.say("hello world.")'; } }}
4.2启动nginx
#/opt/openresty/nginx/sbin/nginx
4.3使用nginx
# curl http://127.0.0.1:8003/hello world.
五:性能测试
5.1安装压力测试工具
#yum install httpd-tools
5.2测试
# ab -c10 -n50000 http://localhost:8003/This is ApacheBench, Version 2.3 <$Revision: 1430300 $>Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/Licensed to The Apache Software Foundation, http://www.apache.org/Benchmarking localhost (be patient)Completed 5000 requestsCompleted 10000 requestsCompleted 15000 requestsCompleted 20000 requestsCompleted 25000 requestsCompleted 30000 requestsCompleted 35000 requestsCompleted 40000 requestsCompleted 45000 requestsCompleted 50000 requestsFinished 50000 requestsServer Software: openresty/1.9.7.4Server Hostname: localhostServer Port: 8003Document Path: /Document Length: 13 bytesConcurrency Level: 10Time taken for tests: 7.857 secondsComplete requests: 50000Failed requests: 0Write errors: 0Total transferred: 8050000 bytesHTML transferred: 650000 bytesRequests per second: 6363.75 [#/sec] (mean)Time per request: 1.571 [ms] (mean)Time per request: 0.157 [ms] (mean, across all concurrent requests)Transfer rate: 1000.55 [Kbytes/sec] receivedConnection Times (ms) min mean[+/-sd] median maxConnect: 0 0 0.2 0 1Processing: 1 1 0.2 1 4Waiting: 1 1 0.1 1 3Total: 1 2 0.1 2 4Percentage of the requests served within a certain time (ms) 50% 2 66% 2 75% 2 80% 2 90% 2 95% 2 98% 2 99% 2 100% 4 (longest request)
六:nginx服务相关命令
6.1启动
#/opt/openresty/nginx/sbin/nginx
6.2停止
#/opt/openresty/nginx/sbin/nginx -s stop
6.3重启
#/opt/openresty/nginx/sbin/nginx -s reload
6.4检验nginx配置是否正确
# /opt/openresty/nginx/sbin/nginx -t
版权声明
本文仅代表作者观点,不代表百度立场。
本文系作者授权百度百家发表,未经许可,不得转载。


