關於服務器、中間件、容器的學習筆記

服務器:
運行着特定應用程序爲用戶提供計算資源和服務的計算機
web服務器:
能夠接收網頁請求並進行處理響應的計算機,簡單來說就是運行着web應用程序(IIS、apache等)的計算機


中間件:
web服務器是不支持事務處理和數據庫連接的,但通過配置各種策略來實現容錯和可擴展性
舉個例子
運行着apache服務軟件的服務器,多擴展高可用的apache當然可以滿足多種需求,但遇到高併發的靜態頁面請求時候呢?
單任務對應單進程的apache當然也能滿足需求,但會消耗大量資源,這時爲了優化就會想寫多個策略來滿足這種情況,
而這策略就是中間件的開端,nginx也就應運而生,它可以作爲單獨的進程來運行着,而這個進程可以接收上萬個請求,是專門來處理高併發的靜態頁面請求。
後來大家就把這些策略單獨做成應用程序,它門的統稱就是中間件


容器:
隨着網頁的發展,動態頁面已經是主流,然而動態頁面由各種語言編寫,如PHP的.PHP,java的.JSP,微軟的ASP
那麼程序員又得在web程序上繼續加策略去兼容解析這些請求,可這樣web程序就越來越大和複雜,當然是運維不想看到的情況
所以就出現了Tomcat(servlet)等容器,他們包含了能解析jsp等動態網頁的環境

nginx越做越大,已經可以自己處理頁面請求而不再是單純的轉發請求,甚至支持電子郵件
apache就是衆多擴展的集合
IIS本身也有解析asp的環境

但他們的層級關係是:
服務器(web服務器(中間件、容器))

所以你可以說apache是中間件,IIS是容器,nginx是web服務器,也可以說他們是中間件,但因爲他們出現的原因就是爲了響應頁面而生的應用程序,所以一般說
他們是web服務器而不說中間件或者容器,而中間件和容器都是爲了特定場合而生,爲了優化頁面請求的

中間件和容器越做越大越完善,已經脫離了簡單的程序而是可作爲單獨的應用程序在服務器上運行,所以稱它們爲應用服務器,而運行專門處理網頁請求的應用程序的服務器稱爲web服務器

 

-----------------------------------------------------------------我是分割線--------------------------------------------------------------

 

看完了覺得不錯就點個贊或者評論下吧,感謝!!!

如果本文哪裏有誤隨時可以提出了,收到會盡快更正的

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章