開發學習筆記 Nginx

2021-10-12 07:00:01 字數 1151 閱讀 1591

nginx學習筆記

nginx

是一款免費開源的高效能 http **伺服器及反向**伺服器(reverse proxy)產品,同時它還可以提供 imap/pop3 郵件**服務等功能。

它高併發效能很好,官方測試能夠支撐 5 萬的併發量;執行時記憶體和 cpu 佔用率低,配置簡單,容易上手,而且執行非常穩定

nginx常用功能

1.反向**

客戶端向伺服器傳送請求時,會首先經過nginx伺服器,由nginx伺服器將請求分發到響應的web伺服器。可以採用不同的分發策略。

反向**體現在nginx是對伺服器的**。

2.負載均衡

將對某個節點的重負載均衡到多個節點上並行處理,減輕了節點的壓力,也可以減少前端使用者的等待時間。

nginx將前端的大量併發請求分擔到多個web伺服器上並行處理,保證了前端使用者訪問的效率和後端伺服器的處理壓力

3.web快取

nginx可以作為乙個快取伺服器(類似於訊息佇列),快取前端的請求,不至於讓所有請求一次性全部打到web伺服器上,導致宕機等問題。

nginx可以對已經訪問過的內容在本地建立副本,下次有相同請求到來時不必繼續傳送請求,可以直接響應。以此減少網路擁堵,減小

資料傳輸延時,提高使用者訪問速度。

4.動靜分離

nginx直接響應瀏覽器對靜態資源的請求,只將動態請求**給web伺服器

負載均衡的實現演算法

1.普通輪詢演算法(nginx預設)

在設定好的幾個tomcat伺服器之間採用輪詢的方式分發請求

2.基於比例加權輪詢

在某些情況下,例如tomcat1的效能高於tomcat2的效能,此時可採用加權輪詢機制,給每個tomcat伺服器不同的權重,則nginx在分發時

會按照設定的權重比例進行分發

3.基於ip路由負載

前兩種演算法會有乙個問題,即不同伺服器間的session不能共享,會導致使用者的兩次請求可能會分發到不同伺服器上,從而使得使用者登入資訊丟失之類的問題發生,影響使用者體驗

兩種解決方法: 1.使用某種中介軟體儲存使用者資訊,例如redis

2.按ip位址分配tomcat伺服器,將同乙個ip位址傳送的請求分發到同乙個伺服器,即基於ip路由負載

4.基於伺服器響應時間負載分配

根據伺服器處理請求的響應時間進行負載,響應時間越短的越優先分配

Nginx 學習筆記

nginx配置proxy pass 的 路徑問題 在nginx中配置proxy pass時,如果是按照 匹配路徑時,要注意proxy pass後的url最後的 當加上了 相當於是絕對根路徑,則nginx不會把location中匹配的路徑部分 走 如果沒有 則會把匹配的路徑部分也給 走。locatio...

Nginx學習筆記

常用命令 啟動 start nginx 或者 nginx.exe 停止 nginx.exe s stop 或者 nginx.exe s quit stop是快速停止nginx,quit是完整有序的停止nginx 重啟 nginx.exe s reload 配置資訊修改使用此命令 配置 1 匹配以ro...

nginx學習筆記

mac os x 10.11.5環境 brew install nginx 即可。預設安裝目錄 usr local etc nginx。可以修改目錄下nginx.conf檔案的配置,將8080改為8081,則通過http localhost 8081訪問就可以看到nginx的歡迎介面了。主程序可以處...