天天看點

nginx知識筆記

1、 nginx啟動之後想繼續操作

    kill -HUP pid,則是告訴nginx,從容地重新開機nginx,我們一般用這個信号來重新開機nginx,或重新加載配置,因為是從容地重新開機,是以服務是不中斷的。

2、 推薦設定worker的個數為cpu的核數

    更多的worker數,隻會導緻程序來競争cpu資源了,進而帶來不必要的上下文切換。

3、事件通常有三種類型,網絡事件、信号、定時器。從上面的講解中知道,網絡事件通過異步非阻塞可以很好的解決掉。如何處理信号與定時器

4、nginx中connection就是對tcp連接配接的封裝,其中包括連接配接的socket,讀事件,寫事件, nginx不僅可以作為一個web伺服器,也可以作為郵件伺服器。當然,利用nginx提供的connection,我們可以與任何後端服務打交道。

5、 free_connections = ngx_connection_t = ngx_connection_t[ worker_connections]

         worker_connections 這個值是表示每個worker程序所能建立連接配接的最大值

    一個nginx能建立的最大連接配接數,應該是worker_connections * worker_processes。當然,這裡說的是最大連接配接數,對于HTTP請求本地資源來說,能夠支援的最大并發數量是worker_connections * worker_processes,而如果是HTTP作為反向代理來說,最大并發數量應該是worker_connections * worker_processes/2。因為作為反向代理伺服器,每個并發會建立與用戶端的連接配接和與後端服務的連接配接,會占用兩個連接配接。

6、 注意,為了儲存請求行或請求頭的完整性,一個完整的請求行或請求頭,需要放在一個連續的記憶體裡面,是以,一個完整的請求行或請求頭,隻會儲存在一個buffer裡面。這樣,如果請求行大于一個buffer的大小,就會傳回414錯誤,如果一個請求頭大小大于一個buffer大小,就會傳回400錯誤。在了解了這些參數的值,以及nginx實際的做法之後,在應用場景,我們就需要根據實際的需求來調整這些參數,來優化我們的程式了。

nginx知識筆記
nginx知識筆記

繼續閱讀