OpenResty(?稱:ngx_openresty) 是一個(gè)基于 NGINX 的可伸縮的 Web 平臺,OpenResty 是?個(gè)強(qiáng)大的 Web 應(yīng)?服務(wù)器,Web 開發(fā)?員可以使用 Lua 腳本語?調(diào)動 Nginx ?持的各種 C 以及 Lua 模塊,更主要的是在性能方面,OpenResty可以快速構(gòu)造出足以勝任 10K 以上并發(fā)連接響應(yīng)的超高性能 Web 應(yīng)用系統(tǒng)
OpenResty® 是一個(gè)基于 Nginx 與 Lua 的高性能 Web 平臺,其內(nèi)部集成了大量精良的 Lua 庫、第三方模塊以及大多數(shù)的依賴項(xiàng)。用于方便地搭建能夠處理超高并發(fā)、擴(kuò)展性極高的動態(tài) Web 應(yīng)用、Web 服務(wù)和動態(tài)網(wǎng)關(guān)。
OpenResty® 通過匯聚各種設(shè)計(jì)精良的 Nginx 模塊(主要由 OpenResty 團(tuán)隊(duì)自主開發(fā)),從而將 Nginx 有效地變成一個(gè)強(qiáng)大的通用 Web 應(yīng)用平臺。這樣,Web 開發(fā)人員和系統(tǒng)工程師可以使用 Lua 腳本語言調(diào)動 Nginx 支持的各種 C 以及 Lua 模塊,快速構(gòu)造出足以勝任 10K 乃至 1000K 以上單機(jī)并發(fā)連接的高性能 Web 應(yīng)用系統(tǒng)。
OpenResty® 的目標(biāo)是讓你的Web服務(wù)直接跑在 Nginx 服務(wù)內(nèi)部,充分利用 Nginx 的非阻塞 I/O 模型,不僅僅對 HTTP 客戶端請求,甚至于對遠(yuǎn)程后端諸如 MySQL、PostgreSQL、Memcached 以及 Redis 等都進(jìn)行一致的高性能響應(yīng)。
OpenResty中?官網(wǎng): http://openresty.org/cn/
windows版安裝
1.運(yùn)??個(gè)Hello World
在任意?個(gè)地?新建?個(gè)?件夾(注意最好不要有中?路徑)。例如:在桌面新建?個(gè) example 文件夾, ?錄結(jié)構(gòu)如下 (?錄樹生成網(wǎng)站 http://dir.yardtea.cc/)
2.其中l(wèi)ogs和conf是必要的,?面的?件可以新建空文件。
3.打開nginx.conf如?配置:
worker_processes 1; error_log logs/error.log; events { worker_connections 1024; } http { server { listen 9000; default_type text/html; location / { root /data/html; index kbn.html; } } }
4.啟動nginx
nginx -p /bin -c conf/nginx.conf
或 cd /var/nginx/bin目錄使用 nginx -c conf/nginx.conf
如果啟動報(bào)錯(cuò) resty.core 找不到, 就把nginx安裝目錄中的lua,luaLib 兩個(gè)?件夾復(fù)制到project ?面去
5.修改配置之后使? ./nginx -s reload 重啟
停?./nginx -s stop
ConterOS 安裝 OpenResty
下載地址:
OpenResty官?: http://openresty.org/OpenResty下載地址:http://openresty.org/cn/download.html
- 安裝依賴庫:
$ yum install -y pcre-devel openssl-devel gcc curl
2.下載OpenResty版本:
$ wget https://openresty.org/download/openresty-1.15.8.1.tar.gz wget https://openresty.org/download/openresty-1.21.4.1.tar.gz
- 解壓:
$ tar -xzvf openresty-1.15.8.1.tar.gz
- 進(jìn)?解壓?目錄:
$ cd openresty-1.15.8.1/
- 檢查配置環(huán)境, ?成 Makefile,默認(rèn)安裝到/usr/local/openresty:
$ ./configure
- 編譯安裝:
$ gmake && gmake install
安裝結(jié)果:
mkdir -p /usr/local/openresty/site/lualib /usr/local/openresty/site/pod /usr/local/openresty/site/manifest ln -sf /usr/local/openresty/nginx/sbin/nginx /usr/local/openresty/bin/openresty
可以看到openresty 實(shí)際上是nginx的軟連接。
7.常用命令:
查看版本號: $ /usr/local/openresty/bin/openresty -v nginx version: openresty/1.15.8.3 檢驗(yàn)配置 /usr/local/openresty/bin/openresty -t 啟動 /usr/local/openresty/bin/openresty 停? /usr/local/openresty/bin/openresty -s stop 重新加載配置 /usr/local/openresty/bin/openresty -s reload
- 配置/lib/systemd/system/openresty.service,通過systemctl啟動:
[Unit] Description=openresty - high performance web server After=network.target remote-fs.target nss-lookup.target [Service] Type=forking ExecStart=/usr/local/openresty/bin/openresty -c /usr/local/openresty/nginx/conf/nginx.conf ExecReload=/usr/local/openresty/bin/openresty -s reload ExecStop=/usr/local/openresty/bin/openresty -s stop [Install] WantedBy=multi-user.target
9.添加openresty.service后,使配置文件生效:
$ systemctl daemon-reload
10.使用systemctl管理openresty:
啟動 $ systemctl start openresty 停? $ systemctl stop openresty 重載配置 $ systemctl reload openresty 重啟 $ systemctl restart openresty