深入理解Nginx 第8章 nginx基礎架構

2021-09-02 20:20:50 字數 825 閱讀 2653

吞吐量(頻寬指的是單個連線的吞吐量)

單次請求的延遲性

網路效率:長連線減少建立、關閉連線的成本,壓縮演算法增加資訊攜帶量

ngx_conf_module:唯一只有乙個模組(ngx_conf_module)的模組型別

ngx_core_module:核心模組,包括ngx_core_module,ngx_errorlog_module,ngx_events_module,ngx_openssl_module,ngx_mail_module,定義核心模組使得其他模組可以只關注於如何呼叫核心模組

配置模組與核心模組是其他模組的基礎。事件模組是http模組與mail模組的基礎。http模組和mail模組關注於應用層

在事件模組中,ngx_event_core_module是其他所有事件模組的基礎;ngx_http_core_module是其他所有http模組的基礎;ngx_mail_core_module是其他所有mail模組的基礎。

原理:一般由網絡卡、磁碟產生事件,事件模組負責事件收集、分發操作,所有模組都可能是消費者,它們向事件模組註冊感興趣的事件。在時間產生後,事件模組會把事件分發到相應模組處理。

傳統web伺服器(apache):事件驅動僅在tcp連線建立、關閉,直到請求被處理結束時,中間都一直佔據著系統資源

nginx: 事件收集、分發器才會占用程序資源,由其統一排程、分發

完全不同的理念:apache 每個事件消費者獨佔乙個程序資源,nginx消費者只是被事件分發者程序短期呼叫,不過nginx要求消費者不能有阻塞行為,否則將導致程序阻塞。

解決辦法:對階段進行劃分,將阻塞方法改為,非阻塞呼叫呼叫完後,將事件加入到事件收集器中,等待epoll收到後再進行呼叫

深入理解nginx

1.檢視核心版本 因為2.6以上的核心才支援epoll,nginx的高併發的特性依賴epoll uname a linux com.guang 3.10.0 514.16.1.el7.x86 64 1 smp wed apr 12 15 04 24 utc 2017 x86 64 x86 64 x8...

《深入理解nginx》總結

一些指標 和nginx有關的核心調優 可以修改 etc sysctl.conf來更改核心引數調優 nginx為訪問第三方服務做的優化 在用nginx開發模組時,如果需要訪問第三方服務,不能自己簡單的用套接字程式設計,會破壞nginx全非同步架構。nginx提供了兩種全非同步通訊方式 upstream...

第10章 深入理解Session與Cookie

session與cookie的作用都是為了保持訪問使用者與後端伺服器的互動狀態。使用cookie來傳遞資訊時,隨著cookie個數的增多和訪問量的增加,它占用的網路頻寬也很大,試想假如cookie占用200個位元組,如果一天的pv有幾億,它要占用多少頻寬?所以有大訪問量的時候希望用session,但...