1. 程式人生 > 其它 >Nginx系列(1)- Nginx簡介

Nginx系列(1)- Nginx簡介

公司產品出現瓶頸

公司專案剛上線的時候,併發量小,使用者使用少,所以在低併發的情況下,一個jar包啟動應用就夠了,然後內部tomcat返回內容給使用者

但是慢慢的,使用平臺的使用者越來越多,併發量慢慢增大了,這時候一臺伺服器滿足不了我們的需求了

於是我們橫向擴充套件,又增加了伺服器。這個時候幾個專案啟動在不同的伺服器上;使用者要訪問,就需要增加一臺代理伺服器,通過代理伺服器來幫我們進行轉發和請求處理

我們希望這個代理伺服器可以幫助我們接收使用者的請求,然後將使用者的請求按照規則幫我們轉到不同的伺服器節點尚。這個過程使用者是無感知的,使用者並不知道是哪個伺服器返回的結果,我們還希望他可以按照伺服器的效能提供不同的權重選擇。保證最佳體驗!所以我們使用了Nginx

什麼是Nginx

  • Nginx(engine x) 是一個高效能的HTTP反向代理web伺服器,同時也提供了IMAP/POP3/SMTP服務。Nginx是由伊戈爾·賽索耶夫為俄羅斯訪問量第二的Rambler.ru站點(俄文:Рамблер)開發的,第一個公開版本0.1.0釋出於2004年10月4日。
  • 其將原始碼以類BSD許可證的形式釋出,因它的穩定性、豐富的功能集、簡單的配置檔案和低系統資源的消耗而聞名。2011年6月1日,nginx 1.0.4釋出。
  • Nginx是一款輕量級Web伺服器/反向代理伺服器及電子郵件(IMAP/POP3)代理伺服器,在BSD-like 協議下發行。其特點是佔有記憶體少,併發能力強,官方資料測試表明能夠支援高達50000個併發連線的響應
  • Nginx作為負載均衡服務:Nginx 既可以在內部直接支援 Rails 和 PHP 程式對外進行服務,也可以支援作為 HTTP代理服務對外進行服務。Nginx採用C進行編寫,不論是系統資源開銷還是CPU使用效率都比 Perlbal 要好很多