nginx 擁有大量的官方和第三方模組,這些已有的模組可以幫助我們實現伺服器上的很多功能,使用這些模組時,僅僅需要增加、修改一些配置項即可。因此,我們首先需要了解 nginx 的執行方式和語法規則。
一般情況下 nginx 都是使用乙個 master 程序來管理多個 worker 程序,而 worker 程序的數量通常與伺服器上的 cpu 核心數相等。每乙個 worker 程序都是繁忙的,它們在真正地提供網際網路服務,master 程序則很 「清閒」,只負責監控管理 worker 程序。worker 程序之間通過共享記憶體、原子操作等一些程序間通訊機制來實現負載均衡等功能。nginx 程序的關係如下圖所示。
nginx 是支援但程序(master 程序)提供服務的,那麼為什麼通常要按照 master-worker 方式配置同時啟動多個程序呢?這樣做的好處主要有以下兩點:
深入理解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...
深入理解Nginx 閱讀筆記 一
眾所周知,apache lighttpd tomcat jetty iis等都是著名的web伺服器 這裡就不詳細介紹這幾個伺服器了,有興趣的可以自己查資料 那為什麼我要特意學習nginx呢?最重要的原因當然是 網際網路公司 尤其是杭州的某個電商公司 面試的時候可以瞎xx吹一波,顯得自己很叼 開玩笑的...