摘要:則是基金會下的另外一個項目,與相比,能夠動態的生成資源并返回到客戶端。和都能夠將某一個文本文件的內容通過協議返回到客戶端,但是這個文本文件的內容是固定的也就是說無論何時任何人訪問它得到的內容都是完全相同的,這樣的資源我們稱之為靜態資源。
作者:知乎用戶
鏈接:https://www.zhihu.com/questio...
來源:知乎
Apache,指的是Apache軟件基金會下的一個項目——Apache HTTP Server Project;Nginx同樣也是一款開源的HTTP服務器軟件(當然它也可以作為郵件代理服務器、通用的TCP代理服務器)。
HTTP服務器本質上也是一種應用程序——它通常運行在服務器之上,綁定服務器的IP地址并監聽某一個tcp端口來接收并處理HTTP請求,這樣客戶端(一般來說是IE, Firefox,Chrome這樣的瀏覽器)就能夠通過HTTP協議來獲取服務器上的網頁(HTML格式)、文檔(PDF格式)、音頻(MP4格式)、視頻(MOV格式)等等資源。
下圖描述的就是這一過程:
不僅僅是Apache HTTP Server和Nginx,絕大多數編程語言所包含的類庫中也都實現了簡單的HTTP服務器方便開發者使用:HttpServer (Java HTTP Server )Python SimpleHTTPServer使用這些類庫能夠非常容易的運行一個HTTP服務器,它們都能夠通過綁定IP地址并監聽tcp端口來提供HTTP服務。
Apache Tomcat則是Apache基金會下的另外一個項目,與Apache HTTP Server相比,Tomcat能夠動態的生成資源并返回到客戶端。Apache HTTP Server和Nginx都能夠將某一個文本文件的內容通過HTTP協議返回到客戶端,但是這個文本文件的內容是固定的——也就是說無論何時、任何人訪問它得到的內容都是完全相同的,這樣的資源我們稱之為靜態資源。
動態資源則與之相反,在不同的時間、不同的客戶端訪問得到的內容是不同的,例如:包含顯示當前時間的頁面顯示當前IP地址的頁面Apache HTTP Server和Nginx本身不支持生成動態頁面,但它們可以通過其他模塊來支持(例如通過Shell、PHP、Python腳本程序來動態生成內容)。如果想要使用Java程序來動態生成資源內容,使用這一類HTTP服務器很難做到。Java Servlet技術以及衍生的Java Server Pages技術可以讓Java程序也具有處理HTTP請求并且返回內容(由程序動態控制)的能力,Tomcat正是支持運行Servlet/JSP應用程序的容器(Container):Tomcat運行在JVM之上,它和HTTP服務器一樣,綁定IP地址并監聽TCP端口,同時還包含以下指責:
管理Servlet程序的生命周期
將URL映射到指定的Servlet進行處理
與Servlet程序合作處理HTTP請求——根據HTTP請求生成HttpServletResponse對象并傳遞給Servlet進行處理,將Servlet中的HttpServletResponse對象生成的內容返回給瀏覽器
雖然Tomcat也可以認為是HTTP服務器,但通常它仍然會和Nginx配合在一起使用:動靜態資源分離——運用Nginx的反向代理功能分發請求:所有動態資源的請求交給Tomcat,而靜態資源的請求(例如圖片、視頻、CSS、JavaScript文件等)則直接由Nginx返回到瀏覽器,這樣能大大減輕Tomcat的壓力。負載均衡,當業務壓力增大時,可能一個Tomcat的實例不足以處理,那么這時可以啟動多個Tomcat實例進行水平擴展,而Nginx的負載均衡功能可以把請求通過算法分發到各個不同的實例進行處理。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/35944.html
摘要:則是基金會下的另外一個項目,與相比,能夠動態的生成資源并返回到客戶端。和都能夠將某一個文本文件的內容通過協議返回到客戶端,但是這個文本文件的內容是固定的也就是說無論何時任何人訪問它得到的內容都是完全相同的,這樣的資源我們稱之為靜態資源。 作者:知乎用戶鏈接:https://www.zhihu.com/questio...來源:知乎 Apache,指的是Apache軟件基金會下的一個項目...
摘要:接下來我們要配置這個的端口,這樣他們才能運行時端口號不沖突。問題指明不同的端口號訪問也太蠢了吧的確很蠢,所以我們要慢慢過渡學習。接下來我們學習用來進行反向代理。阿里云的部分有一些配置的具體過程。 一、在linux上部署運行多個tomcat 1、以前的我們 雖然說是在linux上,但是windows上也是同樣的道理,只不過我們服務器都是選用linux罷了。 原先,自己有多個項目需要部署在...
摘要:前提配置環境變量準備服務器或者虛擬機,以及環境,這個是必須的前提啊,我相信你可以的。關掉主機,主機監控到無后,自動切換 前提-配置java環境變量 準備centos服務器或者虛擬機,以及JAVA環境,這個是必須的前提啊,我相信你可以的。 tomcat # 下載 curl http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.31/bi...
摘要:前提配置環境變量準備服務器或者虛擬機,以及環境,這個是必須的前提啊,我相信你可以的。關掉主機,主機監控到無后,自動切換 前提-配置java環境變量 準備centos服務器或者虛擬機,以及JAVA環境,這個是必須的前提啊,我相信你可以的。 tomcat # 下載 curl http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.31/bi...
閱讀 3440·2023-04-25 23:25
閱讀 2068·2021-11-12 10:36
閱讀 2815·2019-08-30 12:47
閱讀 2036·2019-08-29 18:45
閱讀 435·2019-08-29 17:28
閱讀 1785·2019-08-29 17:15
閱讀 1707·2019-08-29 16:05
閱讀 1405·2019-08-29 14:17