OpenResty / Nginx模塊,Lua庫和相關資源的列表
什么是OpenResty
OpenResty是一個成熟的網絡平台,它集成了標准的Nginx核心,LuaJIT,許多精心編寫的Lua庫,許多高質量的第三方Nginx模塊以及大多數外部依賴項。它旨在幫助開發人員輕松構建可伸縮的Web應用程序,Web服務和動態Web網關。
通過利用各種精心設計的Nginx模塊(其中大部分由OpenResty團隊自己開發),OpenResty有效地將nginx服務器轉變為功能強大的Web應用服務器,其中Web開發人員可以使用Lua編程語言編寫各種腳本現有的nginx C模塊和Lua模塊,構建極高性能的Web應用程序,能夠在一個盒子中處理10K~1000K +連接。
OpenResty旨在完全在Nginx服務器中運行您的服務器端Web應用程序,利用Nginx的事件模型不僅可以與HTTP客戶端進行非阻塞I / O,還可以使用MySQL,PostgreSQL,Memcached和Redis等遠程后端。
OpenResty的實際應用包括動態Web門戶和Web網關,Web應用防火牆,用於移動應用/廣告/分布式存儲/數據分析的Web服務平台,以及成熟的動態Web應用和網站。用於運行OpenResty的硬件范圍從非常大的金屬到資源非常有限的嵌入式設備。我們的生產用戶每天只需少量機器就能為數百萬活躍用戶提供數十億的請求,這種情況並不少見。
OpenResty不是Nginx分支。它只是一個軟件包。在OpenResty中應用於Nginx核心的大多數補丁已經提交給官方的Nginx團隊,並且提交的大多數補丁也已被接受。我們正在努力不分叉Nginx並始終使用官方Nginx團隊中最新的最佳Nginx核心。
官方頻道
- 網站:http://openresty.org/
- 郵件列表:https://groups.google.com/forum/#! forum / opennresty- en(中文列表)
- Github組織:https://github.com/openresty
- 首席開發人員:@agentzh
- OpenResty Package Manager(
opm
):包存儲庫,opm源 - 國內最可利用的文檔:http://wiki.jikexueyuan.com/project/openresty/
模塊
核心模塊
核心模塊捆綁在OpenResty包中。
- ngx_openresty - 將Nginx變成一個成熟的Web應用服務器 - OpenResty Bundle Generation的來源
- lua-nginx-module - 將Lua的強大功能嵌入到Nginx中
- stream-lua-nginx-module - 將Lua的強大功能嵌入到Nginx流/ TCP服務器中
- echo-nginx-module - 一個Nginx模塊,用於為Nginx的配置文件帶來“echo”,“sleep”,“time”等功能
- xss-nginx-module - 對nginx中的跨站點腳本(XSS)的本機支持
- set-misc-nginx-module - 將各種set_xxx指令添加到nginx的重寫模塊(md5 / sha1,sql / json引用等等)
- encrypted-session-nginx-module - 加密和解密Nginx變量值
- srcache-nginx-module - 任意nginx位置的基於透明子請求的緩存布局
- lua-upstream-nginx-module - Nginx C模塊,用於向Nginx上游的ngx_lua公開Lua API
- headers-more-nginx-module - 設置並清除輸入和輸出標題...超過“添加”!
- array-var-nginx-module - 將對數組變量的支持添加到nginx配置文件中
- memc-nginx-module - 標准memcached模塊的擴展版本,支持set,add,delete和更多memcached命令
- redis2-nginx-module - Redis 2.0協議的Nginx上游模塊
- rds-json-nginx-module - 一個nginx輸出過濾器,用於格式化由ngx_drizzle和其他人生成的Resty DBD Streams到JSON
- rds-csv-nginx-module - 用於將Resty-DBD-Streams(RDS)轉換為逗號分隔值(CSV)的Nginx輸出過濾器模塊
- drizzle-nginx-module - 一個Nginx上游模塊,它通過libdrizzle與mysql和細雨進行對話
- ngx_postgres - 允許Nginx直接與PostgreSQL數據庫通信的上游模塊
- form-input-nginx-module - 這是一個nginx模塊,它讀取在“application / x-www-form-urlencoded”中編碼的HTTP POST和PUT請求體,並將請求體中的參數解析為nginx變量。
- ngx_coolkit - 小而有用的nginx附加組件的集合
- ngx_devel_kit - 一個Nginx模塊,它添加了模塊開發人員可以在自己的模塊中使用的其他通用工具
另請注意,resty
OpenResty包中包含命令行客戶端。該命令行客戶機的來源可以在Github找到。
核心Nginx模塊
要了解有關Nginx核心模塊的更多信息,請參閱Nginx文檔。Nginx附帶的一些模塊(並非所有模塊都默認構建):
- ngx_http_core_module
- ngx_http_ssl_module - ngx_http_ssl_module模塊為HTTPS提供必要的支持
- ngx_http_v2_module - ngx_http_v2_module模塊提供對HTTP / 2的支持
- ngx_http_realip_module - ngx_http_realip_module模塊用於將客戶端地址和可選端口更改為在指定的頭字段中發送的端口
- ngx_http_addition_module - ngx_http_addition_module模塊是一個過濾器,用於在響應之前和之后添加文本
- ngx_http_xslt_module - ngx_http_xslt_module是一個使用一個或多個XSLT樣式表轉換XML響應的過濾器
- ngx_http_image_filter_module - ngx_http_image_filter_module模塊是一個過濾器,可以轉換JPEG,GIF和PNG格式的圖像
- ngx_http_geoip_module - ngx_http_geoip_module模塊使用預編譯的MaxMind數據庫創建具有取決於客戶端IP地址的值的變量
- ngx_http_sub_module - ngx_http_sub_module模塊是一個過濾器,它通過用另一個指定的字符串替換一個指定的字符串來修改響應
- ngx_http_dav_module - ngx_http_dav_module模塊用於通過WebDAV協議實現文件管理自動化。該模塊處理HTTP和WebDAV方法PUT,DELETE,MKCOL,COPY和MOVE
- ngx_http_flv_module - ngx_http_flv_module模塊為Flash Video(FLV)文件提供偽流服務器端支持
- ngx_http_mp4_module - ngx_http_mp4_module模塊為MP4文件提供偽流服務器端支持。此類文件通常具有.mp4,.m4v或.m4a文件擴展名
- ngx_http_gunzip_module - ngx_http_gunzip_module模塊是一個過濾器,它使用“Content-Encoding:gzip”解壓縮響應,用於不支持“gzip”編碼方法的客戶端。當需要存儲壓縮數據以節省空間並降低I / O成本時,該模塊將非常有用
- ngx_http_gzip_static_module - ngx_http_gzip_static_module模塊允許發送帶有“.gz”文件擴展名的預壓縮文件,而不是常規文件
- ngx_http_auth_request_module - ngx_http_auth_request_module模塊根據子請求的結果實現客戶端授權
- ngx_http_random_index_module - ngx_http_random_index_module模塊處理以斜杠字符('/')結尾的請求,並在目錄中選擇一個隨機文件作為索引文件
- ngx_http_secure_link_module - ngx_http_secure_link_module模塊(0.7.18)用於檢查請求鏈路的真實性,保護資源免受未經授權的訪問,並限制鏈路生存期
- ngx_http_slice_module - ngx_http_slice_module模塊是一個過濾器,它將請求拆分為子請求,每個子請求返回一定范圍的響應
- ngx_http_stub_status_module - ngx_http_stub_status_module模塊提供對基本狀態信息的訪問
- ngx_http_charset_module - ngx_http_charset_module模塊將指定的字符集添加到“Content-Type”響應頭字段
- ngx_http_gzip_module - ngx_http_gzip_module模塊是一個使用“gzip”方法壓縮響應的過濾器
- ngx_http_ssi_module - ngx_http_ssi_module模塊是一個過濾器,用於處理通過它的響應中的SSI(服務器端包含)命令
- ngx_http_userid_module - ngx_http_userid_module模塊設置適合客戶端識別的cookie
- ngx_http_access_module - ngx_http_access_module模塊允許限制對某些客戶端地址的訪問
- ngx_http_auth_basic_module - ngx_http_auth_basic_module模塊允許通過使用“HTTP基本身份驗證”協議驗證用戶名和密碼來限制對資源的訪問
- ngx_http_autoindex_module - ngx_http_autoindex_module模塊處理以斜杠字符('/')結尾的請求,並生成目錄列表
- ngx_http_geo_module - ngx_http_geo_module模塊使用取決於客戶端IP地址的值創建變量
- ngx_http_map_module - ngx_http_map_module模塊創建的變量的值取決於其他變量的值
- ngx_http_split_clients_module - ngx_http_split_clients_module模塊創建適合A / B測試的變量,也稱為拆分測試
- ngx_http_referer_module - ngx_http_referer_module模塊用於阻止對“Referer”頭字段中具有無效值的請求訪問站點
- ngx_http_rewrite_module - ngx_http_rewrite_module模塊用於使用PCRE正則表達式更改請求URI,返回重定向,並有條件地選擇配置
- ngx_http_proxy_module - ngx_http_proxy_module模塊允許將請求傳遞到另一台服務器
- ngx_http_fastcgi_module - ngx_http_fastcgi_module模塊允許將請求傳遞給FastCGI服務器
- ngx_http_uwsgi_module - ngx_http_uwsgi_module模塊允許將請求傳遞給uwsgi服務器
- ngx_http_scgi_module - ngx_http_scgi_module模塊允許將請求傳遞給SCGI服務器
- ngx_http_memcached_module - he ngx_http_memcached_module模塊用於從memcached服務器獲取響應
- ngx_http_limit_conn_module - ngx_http_limit_conn_module模塊用於限制每個定義密鑰的連接數,特別是來自單個IP地址的連接數
- ngx_http_limit_req_module - he ngx_http_limit_req_module模塊用於限制每個定義密鑰的請求處理速率,特別是來自單個IP地址的請求的處理速率
- ngx_http_empty_gif_module - ngx_http_empty_gif_module模塊發出單像素透明GIF
- ngx_http_browser_module - ngx_http_browser_module模塊創建的變量的值取決於“User-Agent”請求標頭字段的值
- ngx_http_upstream_module - http://nginx.org/en/docs/http/ngx_http_upstream_module.html
- ngx_http_perl_module - ngx_http_perl_module模塊用於在Perl中實現位置和變量處理程序,並將Perl調用插入SSI
- ngx_mail_core_module
- ngx_mail_ssl_module - ngx_mail_ssl_module模塊為郵件代理服務器提供必要的支持,以使用SSL / TLS協議
- ngx_mail_smtp_module
- ngx_mail_imap_module
- ngx_mail_pop3_module
- ngx_stream_core_module
- ngx_stream_ssl_module - ngx_stream_ssl_module模塊為流代理服務器提供必要的支持,以使用SSL / TLS協議
- ngx_stream_proxy_module - ngx_stream_proxy_module模塊允許通過TCP,UDP和UNIX域套接字代理數據流
第三方Nginx模塊
- ngx_lua_ipc - Lua Nginx模塊和OpenResty的進程間通信 - 在Nginx工作進程之間發送帶有字符串數據的命名警報
- nchan(Github) - 用於HTTP,長輪詢,Websockets和EventSource(SSE)的快速,水平可伸縮,多進程發布/ 訂閱隊列服務器和代理
- ngx_pagespeed(Github) - Nginx的自動PageSpeed優化模塊
- ModSecurity - 開源Web應用程序防火牆
- NAXSI - NAXSI是NGINX的開源,高性能,低規則維護WAF; NAXSI意味着Nginx Anti Xss和Sql Injection
- nginx-upsync-module - Nginx C模塊,從consul或其他人同步上游,動態調整后端服務器權重,無需重新加載nginx
- sass-nginx-module - 語法上令人敬畏的Nginx模塊
- 更多第三方模塊
庫
核心庫
核心庫捆綁在OpenResty包中,您無需單獨安裝它們。
- lua-resty-core - 用於ngx_lua模塊的基於FFI的新Lua API
- lua-resty-upstream-healthcheck - Pure Lua中Nginx上游服務器的健康檢查程序
- lua-resty-string - ngx_lua和LuaJIT的字符串實用程序和公共散列函數
- lua-resty-lock - 基於共享內存字典的ngx_lua的簡單非阻塞鎖定API
- lua-resty-lrucache - 基於LuaJIT FFI的Lua-land LRU Cache
- lua-resty-dns - Nginx Lua模塊的DNS解析器
- lua-resty-resolver - 為ngx_lua和LuaJIT緩存DNS解析器
- lua-resty-upload - 基於ngx_lua cosocket的HTTP文件上傳的流式讀取器和解析器
- lua-resty-websocket - 用於ngx_lua模塊的Lua WebSocket實現
- lua-resty-mysql - 基於cosocket API的非阻塞Lua MySQL客戶端驅動程序,用於ngx_lua
- lua-resty-memcached - 基於cosocket API的nga_lua的Lua memcached客戶端驅動程序
- lua-resty-redis - 基於cosocket API的ngx_lua的Lua Redis客戶端驅動程序
- lua-redis-parser - Redis回復解析器並請求Lua的構造函數庫
- lua-rds-parser - 用C語言編寫的Lua的Resty-DBD-Stream(RDS)解析器
- lua-cjson - Lua cJSON是Lua的快速JSON編碼/解析模塊
- lua-resty-shdict-simple - 簡單的面向應用程序的OpenResty共享字典API接口
- lua-resty-memcached-shdict - 具有shdict緩存層和許多其他功能的強大memcached客戶端
網絡框架
- Lapis - Lapis是一個使用MoonScript或Lua構建Web應用程序的框架,它在Nginx的定制版本中運行,稱為OpenResty
- lor(Github) - 基於OpenResty的快速簡約的Web框架
- Vanilla - 一個OpenResty Web框架
- luastar - 基於OpenResty的HTTP服務器和Web框架
- Lusty - Lua RESTful Web應用程序框架,一個可擴展且快速的Web框架
- GIN - 具有測試驅動開發助手和模式的快速,低延遲,低內存占用空間的Web JSON-API框架
- Quick Server - 基於OpenResty的服務器框架
- Sailor - Lua MVC Web框架
- lua-resty-rack - 一個簡單且可擴展的OpenResty HTTP服務器框架
- MOOCHINE - 基於OpenResty的簡單輕量級Web框架
- sinatra-openresty - Sinatra移植到OpenResty框架
- lj-web - 基於ngx_openresty的輕量級Web框架
- Gimlet Cocktail - 由Martini&Sinatra啟發的Moonscript編寫的OpenResty微博客應用程序框架
- durap - Durap是一個基於OpenResty的Lua Web框架。
- Ziggy Stardust - Ziggy Stardust(或者只是“stardust”)是一個簡單的nginx / Lua框架,靈感來自Sinatra,Express和Mercury
- zLua - 一個基於OpenResty的Luign框架的Codeigniter
- lua-resty-stack - OpenResty簡單應用程序堆棧
- dodolu - 基於OpenResty的輕量級Web框架
- Octopus - Lua網絡平台
- vicky - 一個寧靜的openresty框架,受到expressjs和koa的啟發。
Web開發基礎
- lua-resty-url - OpenResty的 URL解析器
- lua-resty-cookie - 用於OpenResty / ngx_lua的HTTP cookie操作的Lua庫
- lua-resty-cors - OpenResty的跨源資源共享(CORS)實現
- lua-resty-session - OpenResty實現安全Cookie協議的會話庫
- lua-resty-woothee - Project Woothee的Lua-Openresty實現,它是一個多語言用戶代理字符串解析器
- lua-resty-mobile - 此庫解析HTTP標頭並檢測移動設備
- lua-resty-jwt - 用於The Great OpenResty的JWT(JSON Web令牌)
- neturl - Lua的URL和查詢字符串解析器,構建器,規范化程序
- Mio - 基於OpenResty的NGINX中的API統計/摘要和健康數據,就像NGINX Plus一樣
路由庫
- lua-resty-route - OpenResty的 URL路由庫,支持多個路由匹配器,中間件,HTTP和WebSockets處理程序,提及它的一些功能
- router.lua - Lua的准系統路由器,它匹配URL並執行Lua功能
- lua-resty-r3 - libr3 OpenResty實現,libr3是一個高性能的路徑調度庫。它將您的路徑路徑編譯為前綴樹(trie)。通過在啟動時使用構造的前綴trie,您可以有效地調度路徑
請求分段解析器
- lua-resty-reqargs - Helper檢索application / x-www-form-urlencoded,multipart / form-data和application / json Request Arguments
- lua-resty-post - 用於OpenResty的HTTP Post實用程序(文件上載幫助程序)
- lua-resty-multipart-parser - OpenResty / Lua的簡單多部分數據解析器
- lua-resty-multipart - OpenResty的多部分解析庫
中間件和API工具
- Kong(GitHub) - KONG:微服務管理層(安全,管理和擴展您的API和微服務)
- LSSO - Nginx + Lua的輕量級SSO中間件
- apigateway - 基於Nginx和OpenResty的Performant API網關
- 3scale APIcast - Red Hat 3scale API Management的API網關模塊
- Sumory Orange - API網關
- Monarch API Gateway - 基於OpenResty的API網關
模板
- lua-resty-template - Lua和OpenResty的編譯(HTML)模板引擎
- lemplate - 實現Perl的TT2模板語言的OpenResty / Lua模板框架
- etlua - 嵌入式Lua模板
- liquid-lua - 用於OpenResty平台的Liquid的Lua實現
- lua-resty-tmpl - Lua和OpenResty的簡單模板引擎,源自lua-template。
- Alternatives - 一些替代Lua模板解決方案可以與OpenResty一起使用
驗證
- lua-resty-validation - Lua和OpenResty的可擴展鏈接驗證和過濾庫
- valua - 驗證lua!用於進行鏈式驗證的模塊。創建對象,附加測試,使用和重用它!
身份驗證和授權
- lua-resty-macaroons - LuaJIT FFI綁定到libmacaroons - Macaroons是靈活的授權憑證,支持分散委派,衰減和驗證
- lua-resty-openidc - lua-resty-openidc是NGINX實現OpenID Connect依賴方(RP)和OAuth 2.0資源服務器(RS)功能的庫
- lua-resty-duo-mobile - Duo Mobile Auth API的OpenResty客戶端
- micro-auth - 一種微服務,可以輕松地將Google和Github的身份驗證添加到您的應用程序中(注意:在生產中使用它之前,請參閱:https://news.ycombinator.com/item ? id = 13682682 - 希望我們可以刪除此未來的評論)
加密
- lua-resty-string - ngx_lua和LuaJIT的字符串實用程序和公共散列函數
- lua-resty-nettle - 用於Nettle的LuaJIT FFI綁定(一個低級加密庫)
- lua-resty-chash - OpenResty / Lua的通用一致哈希實現
- lua-resty-jump-consistent-hash - 為LuaJIT跳轉一致哈希
- lua-resty-letsencrypt - 使用LetsEncrypt CA自動獲取和續訂TLS證書。
- lua-resty-auto-ssl - 使用Let的加密在OpenResty / nginx內進行即時(和免費)SSL注冊和續訂
- lua-resty-peter_sslers - 基於來自緩存或后端json服務器的SNI自動加載/緩存SSL證書
- lua-resty-murmurhash2 - LuaJIT MurmurHash 2綁定到Nginx / OpenResty murmurhash2實現
- lua-resty-hmac - 用於制作和接收hmac簽名請求的Lua驅動程序
- lua-resty-scrypt - LuaJIT基於FFI的OpenResty scrypt庫
- lua-resty-xxhash - LuaJIT FFI綁定到xxHash,一種非常快速的非加密哈希算法
- lua-resty-rsa - LuaJIT的 RSA功能
- lua-resty-aead - 用於lua-nginx模塊的AEAD密碼庫。僅限BoringSSL。
- lua-resty-hawk - 使用Lua和OpenResty對Nginx進行Hawk身份驗證
- lua-resty-urandom - 用於Linux / BSD內核空間CSPRNG的緩沖包裝器
- lua-resty-fastpbkdf2 - Lua綁定到fastpbkdf2
- lua-argon2-ffi - 用於Argon2密碼哈希算法的LuaJIT FFI綁定
- lua-resty-des - 用於進行DES ECB加密的Lua接口
- WXBizMsgCrypt - 微信消息密碼學的Lua版本
聯網
- LUA-resty-HTTP通過@pintsized -為lua HTTP客戶端cosocket驅動OpenResty / ngx_lua
- lua- resty-HTTP通過@liseen -基於cosocket API為ngx_lua Lua的HTTP客戶端驅動程序
- lua- resty-HTTP通過@DorianGray -基於cosocket API為ngx_lua Lua的HTTP客戶端驅動程序
- lua-resty-http-simple - 用於ngx_lua的簡單Lua HTTP客戶端驅動程序
- lua-resty-httpipe - 用於OpenResty / ngx_lua的Lua HTTP客戶端cosocket驅動程序
- lua-resty-httpclient - 用於aLiLua&ngx_lua的非阻塞Lua HTTP客戶端庫
- lua-httpcli-resty - 用於OpenResty的Lua HTTP客戶端模塊
- lua-resty-requests - 另一個OpenResty的HTTP庫
- lua-resty-websocket - 用於ngx_lua模塊的Lua WebSocket實現
- lua-resty-mediador - 確定代理請求的地址並執行IP地址/ CIDR塊處理(IPv4和IPv6)
- lua-resty-iputils - 用於在OpenResty中處理IP地址的實用程序函數
- lua-resty-readurl - 用於捕獲URL,解碼和記錄結果的Lua庫
- lua-resty-dns-client - 包含DNS客戶端,多個實用程序和負載均衡器的Lua庫
- lua-resty-upstream - 上游連接負載均衡和故障轉移模塊
- lua-resty-checkups - 在純ngx_lua中管理Nginx上游
- lua-resty-socks5 - 基於cosocket API的ngx_lua的Lua SOCKS5客戶端
- lua-resty-waf - 基於OpenResty堆棧構建的高性能WAF
- lua-resty-tarpit - OpenResty響應時間膨脹,捕獲和延遲不需要的請求
- lua-resty-jsonrpc-batch - 用於OpenResty的JSON-RPC 2.0批處理請求協議模塊
- lua-resty-limit-traffic - 用於限制和控制OpenResty / ngx_lua中流量的 Lua庫
- lua-resty-limits - 每秒或每分鍾限制請求
- lua-resty-fastcgi - 基於cosocket API的ngx_lua的Lua FCGI客戶端驅動程序
- lua-resty-ftpclient - 基於cosocket API的ngx_lua的Lua FTP客戶端驅動程序
- lua-capnproto - Cap'n Proto是一種瘋狂快速的數據交換格式和基於功能的RPC系統
- lua-resty-tornera - 一個流量重放工具,帶有易於使用的HTTP API,適用於OpenResty / LuaJIT
- lua-resty-consul - 與ngx_lua的consul HTTP API接口的庫
- lua-resty-healthcheck - 用於OpenResty的Healthcheck庫,用於驗證上游服務狀態
- lua-resty-balancer - OpenResty的通用一致哈希實現
- lua-resty-sniproxy - 基於stream-lua-nginx-module的SNI代理
- lua-resty-multiplexer - 流子系統的透明端口服務多路復用器
- lua-resty-http2 - OpenResty的HTTP / 2協議(客戶端)實現
數據庫和存儲
- lua-resty-mysql - 基於cosocket API的非阻塞Lua MySQL客戶端驅動程序,用於ngx_lua
- lua-resty-mysql-connector - lua-resty-mysql的連接實用程序,支持讀寫分離,支持實例化不同的數據庫
- lua-resty-postgres - 用於ngx_lua的非阻塞Lua PostgreSQL驅動程序庫
- pgmoon - 用於OpenResy等的純Lua Postgres驅動程序
- lua-resty-couchbase - OpenResty CouchBase模塊
- lua-resty-couchdb - 使用nginx代理ngx.location_capture的Lua resty最小couchdb客戶端
- lua-resty-orm - OpenResty的簡單ORM
- lua-resty-mvc - 你不需要那個復雜的MVC框架!只有一個帶有幾個簡單文件的普通文件夾,您可以享受基本但最常用的MVC功能。
- lua-resty-memcached - 基於cosocket API的nga_lua的Lua memcached客戶端驅動程序
- lua-resty-redis - 基於cosocket API的ngx_lua的Lua Redis客戶端驅動程序
- lua-resty-redis-connector - 用於lua-resty-redis的連接實用程序,可以直接或通過Redis Sentinel輕松可靠地連接到Redis主機
- resty-redis-cluster - 基於resty-redis-cluster的OpenResty Redis群集感知客戶端
- lua-resty-redis-cluster - OpenResty Redis集群客戶端
- lua-resty-redis-util - 基於
lua-resty-redis
並使Redis更容易操作 - lua-cassandra - Pure Lua,功能豐富,支持群集的Cassandra客戶端
- lua-resty-cassandra - 使用CQL二進制協議的純Lua Cassandra客戶端
- lua-resty-bloomd - 基於ngx_lua的客戶端庫,用於與bloomd服務器連接
- lua-resty-riak -基於cosocket API的ngx_lua的Lua riak協議緩沖客戶端驅動程序
- lua-resty-moongoo - 用於OpenResty的MongoDB庫,受Perl Mango的高度啟發
- lua-resty-mongol - Native Lua Mongodb驅動程序,它支持基於cosocket API的luasocket和ngx_lua
- lua-resty-mongo - 基於cosocket API的ngx_lua的Lua mongodb客戶端驅動程序
- lua-mongo - 一個簡單的Lua Mongo驅動程序(用於與co-socket工作的一個fork)
- lua-resty-Influx - InfluxDB的OpenResty客戶端
- lua-telegraf - Telegraf / InfluxDB的Lua / OpenResty客戶端
- LUA-resty-kyototycoon通過@cloudflare -用於使用其天然絲協議KyotoTycoon的Lua客戶端驅動程序(OpenResty / ngx_lua)
- LUA-resty-kyototycoon通過@sjnam -使用其二進制協議用於KyotoTycoon的Lua客戶端驅動程序
- lua-resty-tarantool - 使用嵌入式Lua模塊或OpeRresty與Nginx的Tarantool合作的庫
- lua-nginx-tarantool - Lua腳本中的NoSQL數據庫驅動程序Tarantool基於快速nginx套接字構建
- lua-resty-ssdb - 基於cosocket API的ngx_lua的Lua ssdb客戶端驅動程序,SSDB是一個leveldb服務器
- ledis-openresty - 基於cosocket API的ngx_lua的Lua LedisDB客戶端驅動程序
- lua-resty-fastdfs - 用於ngx_lua的非阻塞Lua FastDFS驅動程序庫
- lua-resty-statsd - OpenResty的StatsD客戶端
- lua-resty-dogstatsd - DogStatsD的客戶端,是Datadog的StatsD度量服務器的擴展。使用nginx cosocket API
- openresty-statsd - OpenResty的Lua模塊,用於向StatsD發送指標
- lua-resty-mogilefs - 基於cosocket API的ngx_lua的Lua mogilefs客戶端驅動程序
測試和分析
- Test :: Nginx - Nginx C模塊和OpenResty Lua庫開發的數據驅動測試支架(參見lua-resty-redis中的真實字測試)
- nginx-systemtap-toolkit - 基於SystemTap的Nginx實時分析和診斷工具
- stapxx - systemtap的簡單宏語言擴展
- FlameGraph - Flame圖表是配置文件軟件的可視化,可以快速准確地識別最頻繁的代碼路徑
- lua-resty-busted - 使用已破壞的測試OpenResty腳本
- lua-resty-test - 基於OpenResty的測試框架
- busted (Github) - 優雅的Lua單元測試
- Telescope (Github) - 望遠鏡是一個高度可定制的Lua測試庫,允許使用嵌套上下文進行聲明性測試
消息隊列和任務管理
- lua-resty-qless - Lua綁定到OpenResty的Qless(隊列/管道管理)(另請參閱:使用OpenResty實現的Qless Web界面)
- lua-resty-rabbitmqstomp - 使用cosocket api通過STOMP 1.2與RabbitMQ代理進行通信的Lua RabbitMQ客戶端庫,該代理具有STOMP插件
- lua-resty-gearman - 基於cosocket API的ngx_lua的Lua gearman客戶端驅動程序
- lua-resty-kafka - 基於cosocket API的ngx_lua的Lua kafka客戶端驅動程序
- lua-resty-beanstalkd - 基於cosocket API的ngx_lua的Lua beanstalkd客戶端驅動程序
- lua-resty-ironmq - OpenResty的簡單IronMQ客戶端
條形碼和QR碼
- lua-resty-QRcode - 用於ngx_lua的QR編碼工具
- lua-resty-QRDecode - ngx_lua的QR解碼器
應用庫
- lua-resty-worker-manager - 跟蹤工作進程和節點啟動/重新啟動/重新加載/停止
- lua-resty-worker-events - Nginx工作進程的進程間事件
- lua-resty-batch - 將nginx中的多個請求合並到一個子請求中
- lua-resty-shell - 與OpenResty應用服務器一起使用的微小的非阻塞子進程/ shell庫(使用sockproc)
- lua-resty-exec - 非阻塞,非shell產生,流和非流子進程庫(使用sockexec)
- lua-resty-repl - 用於OpenResty和LuaJIT代碼的交互式控制台(REPL)
- lua-resty-fileinfo - LuaJIT FFI綁定到libmagic,魔術數字識別庫 - 試圖確定文件類型
- lua-resty-base-encoding - 為OpenResty應用程序提供base32 / base16 / ...編碼。
- lua-resty-mime-sniff - 嗅探給定數據的真實MIME類型
- lua-resty-taglib - 用於TagLib的LuaJIT FFI綁定 - 音頻元數據庫
- lua-resty-uuid - libuuid的LuaJIT FFI綁定,一個兼容DCE的通用唯一標識符庫
- lua-resty-jit-uuid - 純粹的LuaJIT(無依賴關系)uuid生成器針對性能進行了調整
- lua-resty-unique-id - 用於為OpenResty生成唯一ID的Lua庫
- lua-resty-tsort - 對輸入數據執行拓撲排序
- lua-resty-postal - LuaJIT FFI綁定到libpostal - 一個快速的統計解析器/規范器,用於世界各地的街道地址。
- lua-resty-libinjection - 用於libinjection的LuaJIT FFI綁定,一個SQL / SQLi標記器和分析器
- lua-resty-socket - 自動LuaSocket / cosockets兼容模塊
- Inspect - Inspect是一個將任何Lua值轉換為人類可讀表示的庫。它對於調試表中的錯誤特別有用。
- lua- resty-maxminddb通過@ lilien1010 - LuaJIT FFI綁定官方libmaxminddb,以獲取IP位置通過的MaxMind提供的IP數據庫
- lua- resty-maxminddb通過@ anjia0532 -一個Lua庫讀取的MaxMind的地理位置數據庫格式(又名MMDB或geoip2)
日期和時間
這些庫未建立使用lua-nginx-module
的日期時間函數(除luatz)一樣ngx.today
,ngx.time
,ngx.now
,ngx.localtime
,或ngx.utctime
,但他們仍然可以來得心應手。在某些時候,我們可能需要一個更“官方”的OpenResty時間庫。
- luatz - 用於時間和日期操作的Lua庫(有后備
ngx.now
) - LuaDate - Lua 5.x的Lua日期和時間模塊
- SciLua時間庫 - 根據公歷來操縱日期和期間的圖書館,即大多數用途的國際公認日歷
壓縮
- lua-resty-zip - LuaJIT的 ZIP函數(壓縮/解壓縮)
- lua-resty-snappy - 用於快速壓縮器/解壓縮器Snappy的LuaJIT FFI綁定
- lua-resty-brotli - LuaJIT針對Google Brotli的FFI綁定
- lua-resty-zstd - 使用FFI將LuaJIT綁定到Facebook Zstandard
文字格式
- lua-resty-hoedown - LuaJIT FFI綁定到Hoedown,這是一個符合標准,快速,安全的Markdown Markdown處理庫
- lua-gumbo - 用於Gumbo HTML5解析庫的Lua綁定,帶有一組在純Lua中實現的DOM API
- lua-resty-sass - 用於libsass的LuaJIT FFI綁定 - 一個Sass編譯器的AC / C ++實現(http://libsass.org/)
- lua-resty-lanli - LuaJIT FFI綁定到Lanli HTML Sanitizer Library
- lua-resty-ini - Lua INI文件解析器
- lua-re2 - 用於RE2正則表達式庫的C和Lua包裝器。
- lua-aho-corasick - C ++和Lua實現Aho-Corasick(AC)字符串匹配算法
- lua-resty-json - Lua和C的JSON庫(僅限解碼器)。
- lua-resty-libcjson - 用於OpenResty的基於FFI的LuaJIT cJSON庫
- lua-resty-prettycjson - Lua cJSON Pretty Formatter
- lua-resty-jsonschema - https://github.com/tianchaijz/lua-resty-jsonschema
- lua-laxjson - Lua綁定到一個輕松的流式JSON解析器,liblaxjson用於使用FFI的LuaJIT
- lua-resty-utf8rewind - 用於utf8rewind的LuaJIT FFI綁定 - 用C編寫的系統庫,用於擴展默認字符串處理函數,支持UTF-8編碼文本
- lua-resty-unistring - 用於GNU libunistring的LuaJIT FFI綁定 - 一個Unicode字符串操作lIbrary(https://www.gnu.org/software/libunistring/)
- lua-resty-htmlentities - 使用FFI綁定將實體反向移植到LuaJIT作為UTF-8解碼器的實體
- lua-resty-jsdecode - Javascript Escape Notation解碼為UTF-8字節
二進制格式
- lua-resty-msgpack - OpenResty的 Lua消息包
- luajit-msgpack-pure - LuaJIT的 MessagePack(使用FFI,無綁定,V4 API)
文件格式
- lua-resty-libxl - 用於OpenResty的LuaJIT基於FFI的LibXL(Excel)庫
- lua-resty-haru - 用於OpenResty的LuaJIT基於FFI的libHaru(PDF)庫
- lua-resty-hpdf - 用於OpenResty的基於FFI的LuaJIT libHaru(PDF)庫
圖像格式
- lua-resty-imagick - 使用FFI將Lua綁定到ImageMagick的MagicWand for LuaJIT
- Lua IMagick - Lua Pure-C綁定到ImageMagick
- magick - Lua使用FFI綁定到ImageMagick for LuaJIT
- giflib - 使用FFI將Lua綁定到LuaJIT的GIFLIB
- fi-luajit - FreeImage的LuaJIT接口
- lua-vips - 用於libvips的LuaJIT綁定
本地庫
- lua-resty-gettext - 用於OpenResty的基於FFI的LuaJIT gettext庫
高速緩存
- lua-resty-lrucache - 基於LuaJIT FFI的Lua-land LRU Cache
- lua-resty-mlcache - 使用lua-resty-lrucache,共享字典和緩存標記保護的現代靈活多級緩存。
- shcache - shcache嘗試使用ngx.shared.DICT,緩存狀態機位於頂部
- lua-resty-tlc - 使用lua-resty-lrucache和共享字典的雙層緩存實現。
- Ledge - OpenResty的Lua應用程序,為Nginx提供HTTP緩存功能,使用Redis作為緩存/元數據存儲
- lua-resty-cache - HTTP緩存到Redis,可以提供過時響應,並且
lua-resty-lock
只允許一個請求填充新緩存
度量和統計
記錄
- lua-resty-logger-socket - 基於原始套接字的Nginx記錄器庫(基於ngx_lua)
- lua-nginx-logging - 用Lua編寫的Nginx的日志實用程序
- lua-resty-logger - OpenResty的自定義記錄器庫
- lua-resty-rfc5424 - OpenResty中RFC5424(syslog)的實現
- lua-resty-fluentd - Lua流利的基於cosocket API的ngx_lua記錄器
- lua-resty-fluent-logger - Fluentd的結構化記錄器(OpenResty / ngx_lua)
- raven-lua - Sentry的一個小型Lua接口,它還有一個有用的包裝函數call(),它接受任意Lua函數(帶參數)並執行它,捕獲任何錯誤並自動報告給Sentry
編程
- Lua Fun - Lua Fun是Lua的高性能函數編程庫,設計時考慮了LuaJIT的跟蹤編譯器
- Penlight - Penlight匯集了一組通用的純Lua模塊,專注於輸入數據處理(如讀取配置文件),函數編程(如map,reduce,占位符表達式等)和OS路徑管理
- Moses - 用於功能編程的Lua實用帶庫。它補充了內置的Lua表庫,使得對數組,列表和集合的操作更容易
- Underscore.lua - Underscore.lua是一個Lua庫,它提供了一組實用程序函數來處理迭代器,數組,表和函數
- Lodash.lua - Lua關於Javascript庫Lodash的函數式編程庫
- 在GitHub上搜索更多“Functional Lua”項目......
Web API
- lua-resty-github - 在ngx_lua nginx模塊中使用github api的Lua庫
- lua-resty-hipchat - 使用hipchat api的Lua庫
- lua-resty-newrelic - 基於C SDK的ngx_lua的Lua newrelic SDK
- api-gateway-aws - 適用於AWS API的Lua模塊。來自Nginx / OpenResty的缺少的AWS SDK。使用它以簡單的方式代理AWS API,使用您喜歡的任何HTTP客戶端。
- lua-resty-aws - 適用於OpenResty + Lua的AWS簽名V4庫
- lua-resty-aws-sdk - 根據API規范生成的原始AWS SDK
- lua-resty-aws-email - 使用Amazon Simple Email Service(SES)API發送電子郵件
- lua-resty-aws-auth - 簡單的Lua resty實用程序,用於生成Amazon v4授權和簽名標頭
- lua-resty-s3 - 用於將內容上傳到Amazon S3的Lua驅動程序
- lua-resty-s3uploader - AWS S3上傳客戶端,易於使用
- lua-resty-paypal - Lua Paypal客戶端使用快速結賬OpenResty
- lua-resty-17monip - 用於ngx_lua的17MonIP解析庫
- lua-resty-upyun - Upyun基於雲的平台
- lua-mailgun - 用於發送電子郵件和與Mailgun API交互的Lua庫。通過Lapis HTTP API與OpenResty兼容,或通過LuaSocket與任何其他Lua腳本兼容。
- lua-payments - 綁定到各種支付提供程序API以便在Lua中使用(使用OpenResty或支持LuaSocket的任何東西)