日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

OpenResty--------企业级理论实践篇

發布時間:2023/12/31 综合教程 29 生活家
生活随笔 收集整理的這篇文章主要介紹了 OpenResty--------企业级理论实践篇 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

建站服務器

OpenResty背景

Nginx有很多的特性和好處,但是在Nginx上開發成了一個一直的難題,Nginx模塊需要用C開發,而且必須需要符合一系列復雜的規則,最重要的用C開發模塊必須要熟悉Nginx的源代碼,使得開發者對其望而生畏。
OpenResty(也稱為ngx_openresty, 后面簡稱為OR)是一個基于Nginx為基礎核心,通過擴展第三方功能模塊(如比:mysql, PostgreSQL,Memcached,Redis等等),使我們可以用lua(腳本語言)對Nginx核心和三方擴展模塊進行業務開發。

OpenResty優勢

核心

基于Nginx核心為基礎,完全運行于Nginx服務內部中。
運行穩定,輕量級,內存占用少。

事件驅動模型和非阻塞I/O

利用 Nginx 本身的異步非阻塞的事件驅動進行I/O通信,
利用 Nginx 本身的高效的多路復用模型 (epoll/linux, kqueue/freebsd, eventport/solaris)
注:不僅僅是和 HTTP 客戶端間的網絡通信是非阻塞的,與Mysql、PostgreSQL、Memcached 以及 Redis 等眾多遠方后端之間的網絡通信也是非阻塞的。

lua

相對于nginx module (C)開發,lua本身具有語法簡單,弱類型,自帶GC(不用手動管理內存)等特性,大大減輕了開發上手難度。

性能

快速構造出足以勝任 10K 乃至 1000K 以上單機并發連接的高性能 Web 應用系統。

OpenResty 原理

Nginx 采用的是 master-worker 模型,一個 master 進程管理多個 worker 進程,基本的事件處理都是放在 woker 中,master 負責一些全局初始化,以及對 worker 的管理。
在OpenResty中,每個 woker 使用一個 LuaVM,當請求被分配到 woker 時,將在這個 LuaVM 里創建一個 coroutine(協程),協程之間數據隔離。

總結

以上是生活随笔為你收集整理的OpenResty--------企业级理论实践篇的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。