摘要:是一個基于與的高性能平臺,其內(nèi)部集成了大量精良的庫第三方模塊以及大多數(shù)的依賴項。用于方便地搭建能夠處理超高并發(fā)擴展性極高的動態(tài)應用服務和動態(tài)網(wǎng)關(guān)。,,,階段處理,比如記錄訪問量統(tǒng)計平均響應時間
Lua
lua的特點
小巧:一個完整的Lua解釋器不過200k
可擴展性:Lua的解釋器是100%的ANSI編寫的,它提供了非常易于使用的擴展接口和機制,所以Lua的腳本很容易的被C/C++ 代碼調(diào)用,也可以反過來調(diào)用C/C++的函數(shù)
速度快
OpenRestyNginx以輕量級和支持高并發(fā)著稱,所以把Nginx和Lua結(jié)合是很好的想法。所以有了OpenResty。
例子(WIndows平臺為例)OpenResty? 是一個基于 Nginx 與 Lua 的高性能 Web 平臺,其內(nèi)部集成了大量精良的 Lua
庫、第三方模塊以及大多數(shù)的依賴項。用于方便地搭建能夠處理超高并發(fā)、擴展性極高的動態(tài) Web 應用、Web 服務和動態(tài)網(wǎng)關(guān)。
到下載頁面下載OpenResty,或者用下載WNMP的OpenResty版本
增加一個虛擬主機配置
http { server { listen 80; server_name m.test.com; location / { default_type text/html; content_by_lua " ngx.say("hello, world
") "; } } }
開啟Nginx,訪問m.test.com得到:
ngx是Nginx_Lua模塊傳遞給lua的變量
Nginx_Lua模塊指令指令 | 所處處理階段 | 使用范圍 | 解釋 |
---|---|---|---|
init_by_lua init_by_lua_file | loading-config | http | nginx Master進程加載配置時執(zhí)行; 通常用于初始化全局配置/預加載Lua模塊 |
init_worker_by_lua init_worker_by_lua_file | starting-worker | http | 每個Nginx Worker進程啟動時調(diào)用的計時器,如果Master進程不允許則只會在init_by_lua之后調(diào)用; 通常用于定時拉取配置/數(shù)據(jù),或者后端服務的健康檢查 |
set_by_lua set_by_lua_file | rewrite | server,server if,location,location if | 設置nginx變量,可以實現(xiàn)復雜的賦值邏輯;此處是阻塞的,Lua代碼要做到非???; |
rewrite_by_lua rewrite_by_lua_file | rewrite tail | http,server,location,location if | rrewrite階段處理,可以實現(xiàn)復雜的轉(zhuǎn)發(fā)/重定向邏輯; |
access_by_lua access_by_lua_file | access tail | http,server,location,location if | 請求訪問階段處理,用于訪問控制 |
content_by_lua content_by_lua_file | content | location,location if | 內(nèi)容處理器,接收請求處理并輸出響應 |
header_filter_by_lua header_filter_by_lua_file | output-header-filter | http,server,location,location if | 設置header和cookie |
body_filter_by_lua body_filter_by_lua_file | output-body-filter | http,server,location,location if | 對響應數(shù)據(jù)進行過濾,比如截斷、替換。 |
log_by_lua log_by_lua_file | log | http,server,location,location if | log階段處理,比如記錄訪問量/統(tǒng)計平均響應時間 |
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/39729.html
摘要:,配是通過一個類似的協(xié)議,升級版的的。在上有幫你管理進程,在似乎沒有,這是有點令人悲傷的。檢驗一下然后開啟然后配置中里文件在盤建立一個的文件夾,放入,開啟測試寫入訪問應用我的項目就用了這個東西,,歡迎 fastcgi As we all know,nginx配php是通過fastcgi(一個類似http的協(xié)議,升級版的cgi)的。在linux上有php-fpm幫你管理進程,在windo...
摘要:例如響應部分通過的形式獲取或設置響應頭信息。以某個狀態(tài)碼返回響應內(nèi)容,狀態(tài)碼常量對應關(guān)系見部分,也支持數(shù)字形式的狀態(tài)碼。重定向當前請求到新的,響應狀態(tài)碼可選列表為默認。具體內(nèi)容如下相關(guān)文章進入的世界在的應用 首發(fā)于 樊浩柏科學院 當 Nginx 標準模塊和配置不能靈活地適應系統(tǒng)要求時,就可以考慮使用 Lua 擴展和定制 Nginx 服務。OpenResty 集成了大量精良的 Lua 庫...
摘要:使用創(chuàng)建應用程序生成一個新項目如果您尚未閱讀,請閱讀入門指南,了解有關(guān)創(chuàng)建新項目骨架的信息以及,配置和命令的詳細信息。是包含應用程序的常規(guī)模塊。 使用Lua創(chuàng)建Lapis應用程序 生成一個新項目 如果您尚未閱讀,請閱讀入門指南,了解有關(guān)創(chuàng)建新項目骨架的信息以及OpenResty,Nginx配置和lapis命令的詳細信息。 您可以在當前目錄中通過運行以下命令啟動一個新的Lua項目: la...
摘要:多返回值開始變得越來越與眾不同了允許函數(shù)返回多個結(jié)果。這種情況函數(shù)沒有足夠的返回值時也會用來補充。中的索引習慣以開始。 showImg(https://segmentfault.com/img/bVIcQU?w=136&h=103); 為什么值得入手? Nginx作為現(xiàn)在使用最廣泛的高性能后端服務器,Openresty為之提供了動態(tài)預言的靈活,當性能與靈活走在了一起,無疑對于被之前陷于...
摘要:代碼需要的字段模仿獲取西部數(shù)碼信息域名代理模擬執(zhí)行代碼解析出錯添加代理解析出錯查詢西部數(shù)碼失敗請求西部數(shù)碼失敗生成失敗提取西部數(shù)碼數(shù)據(jù)使用結(jié)果另外這個域名是我的,有意出售。 目標對象和過程 爬取的網(wǎng)站是西部數(shù)碼,該網(wǎng)站在https://www.west.cn/web/whois...可以查詢whois信息,通過chrome調(diào)試知道,數(shù)據(jù)是從接口:https://www.west.cn/...
閱讀 2979·2021-11-11 16:55
閱讀 546·2021-09-27 13:36
閱讀 1124·2021-09-22 15:35
閱讀 2952·2019-08-30 12:46
閱讀 3157·2019-08-26 17:02
閱讀 1858·2019-08-26 11:56
閱讀 1320·2019-08-26 11:47
閱讀 443·2019-08-23 17:01