IT培訓(xùn)網(wǎng)
IT在線(xiàn)學(xué)習(xí)
一、WEB服務(wù)器
WEB服務(wù)器也稱(chēng)WWW(WORLD WIDE WEB)服務(wù)器,是安裝并運(yùn)行著WEB服務(wù)器軟件的計(jì)算機(jī),主要用于提供網(wǎng)上信息訪問(wèn)服務(wù)。WEB服務(wù)器不僅能夠存儲(chǔ)信息,還能接收來(lái)自客戶(hù)機(jī)WEB瀏覽器的資源請(qǐng)求,處理請(qǐng)求,并返回處理結(jié)果。
常見(jiàn)的WEB服務(wù)器軟件有WebLogic、Tomcat、IIS等。
WEB服務(wù)器軟件是指駐留在WEB服務(wù)器上的服務(wù)程序。當(dāng)WEB瀏覽器(客戶(hù)端)連接到WEB服務(wù)器并請(qǐng)求資源時(shí),服務(wù)器將接收并處理請(qǐng)求,并將處理結(jié)果發(fā)送回瀏覽器,發(fā)送給瀏覽器的信息還有資源的大小、文件類(lèi)型等,即:告訴客戶(hù)端瀏覽器如何查看資源。
WEB服務(wù)器與客戶(hù)端瀏覽器之間,通過(guò)HTTP(超文本傳輸協(xié)議)進(jìn)行通信。
客戶(hù)端WEB瀏覽器訪問(wèn)WEB服務(wù)器上資源的過(guò)程大致可以分為四個(gè)步驟:創(chuàng)建連接、客戶(hù)端請(qǐng)求、服務(wù)器應(yīng)答、關(guān)閉連接。
(1)創(chuàng)建連接:客戶(hù)端WEB瀏覽器與WEB服務(wù)器之間通過(guò)Socket三次握手,建立TCP連接。
(2)客戶(hù)端請(qǐng)求:WEB瀏覽器在TCP連接基礎(chǔ)上,使用應(yīng)用層HTTP協(xié)議向WEB服務(wù)器發(fā)送資源訪問(wèn)請(qǐng)求。
(3)服務(wù)器應(yīng)答:WEB服務(wù)器接收到請(qǐng)求后,調(diào)用資源,實(shí)施任務(wù)處理,然后使用HTTP協(xié)議把任務(wù)處理的結(jié)果發(fā)送回WEB瀏覽器,WEB瀏覽器負(fù)責(zé)顯示響應(yīng)結(jié)果。
(4)關(guān)閉連接:當(dāng)WEB服務(wù)器應(yīng)答完成后,WEB服務(wù)器主動(dòng)斷開(kāi)與WEB瀏覽器之間TCP連接。
Servlet常常也可以作為WEB服務(wù)器上的應(yīng)用資源,提供客戶(hù)端訪問(wèn)。
Servlet作為一種可駐留在WEB服務(wù)器上運(yùn)行的Java服務(wù)器程序,下圖說(shuō)明了Servlet在WEB應(yīng)用程序中的位置。
若WEB服務(wù)器要支持Servlet的運(yùn)行,就需要與Servlet容器相結(jié)合,為客戶(hù)端提供Servlet的訪問(wèn)服務(wù)。許多WEB服務(wù)器內(nèi)含了Servlet容器,例如:Tomcat、Jetty、JBoss、WebLogic既是WEB服務(wù)器軟件,也是Servlet容器,即:它們包含了Servlet容器。
二、Servlet容器與WEB服務(wù)器共同處理客戶(hù)請(qǐng)求
當(dāng)客戶(hù)端通過(guò)WEB瀏覽器請(qǐng)求訪問(wèn)WEB服務(wù)器上的Servlet時(shí),Servlet容器作為WEB服務(wù)器中的一個(gè)組件,需要與WEB服務(wù)器一起共同處理一個(gè)客戶(hù)請(qǐng)求,處理過(guò)程如下:
(1)客戶(hù)端WEB瀏覽器與WEB服務(wù)器之間通過(guò)Socket建立TCP連接,并使用HTTP協(xié)議向WEB服務(wù)器發(fā)送Servlet訪問(wèn)請(qǐng)求
(2)WEB服務(wù)器負(fù)責(zé)接收來(lái)自客戶(hù)端瀏覽器的HTTP請(qǐng)求
(3)WEB服務(wù)器將接收到的請(qǐng)求,轉(zhuǎn)發(fā)給Servlet容器
(4)如果客戶(hù)端要訪問(wèn)的Servlet不在Servlet容器中,則檢索Servlet,并加載到容器的地址空間中
(5)Servlet容器調(diào)用Servlet的構(gòu)造器和初始化init()方法,創(chuàng)建Servlet實(shí)例,并進(jìn)行初始化(實(shí)例化與初始化方法,僅在第一次加載Servlet時(shí),調(diào)用一次,即:創(chuàng)建一個(gè)Servlet實(shí)例)
(6)Servlet容器調(diào)用Servlet的service()方法處理HTTP請(qǐng)求,并將處理結(jié)果返回給WEB服務(wù)器,同時(shí),將Servlet實(shí)例暫時(shí)保留在Servlet容器的地址空間中,可以繼續(xù)響應(yīng)客戶(hù)端的HTTP請(qǐng)求
(7)WEB服務(wù)器將Servlet的處理結(jié)果發(fā)送回客戶(hù)端瀏覽器
(8)WEB服務(wù)器完成響應(yīng),主動(dòng)斷開(kāi)與WEB瀏覽器之間TCP連接
>>本文地址:http://liujunjsxg.cn/zhuanye/2020/56766.html
聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
1 您的年齡
2 您的學(xué)歷
3 您更想做哪個(gè)方向的工作?
07月15日Java
咨詢(xún)/試聽(tīng)07月15日Python+人工智能
咨詢(xún)/試聽(tīng)07月15日Web前端
咨詢(xún)/試聽(tīng)07月15日UI設(shè)計(jì)
咨詢(xún)/試聽(tīng)07月15日大數(shù)據(jù)
咨詢(xún)/試聽(tīng)07月15日Java
咨詢(xún)/試聽(tīng)07月15日Python+人工智能
咨詢(xún)/試聽(tīng)07月15日Web前端
咨詢(xún)/試聽(tīng)07月15日UI設(shè)計(jì)
咨詢(xún)/試聽(tīng)07月15日大數(shù)據(jù)
咨詢(xún)/試聽(tīng)