Apache Tomcat 10是一款免費(fèi)開(kāi)源的Web應(yīng)用服務(wù)器軟件??杀灰暈樵跈C(jī)器上配置好的服務(wù)環(huán)境,能夠處理HTML頁(yè)面的訪問(wèn)請(qǐng)求。Tomcat可理解為Apache服務(wù)器的功能延伸,但其運(yùn)行時(shí)保持獨(dú)立進(jìn)程,以單獨(dú)進(jìn)程的方式自主運(yùn)作??僧?dāng)做自主的Web服務(wù)器直接運(yùn)轉(zhuǎn),Servlet容器組件內(nèi)嵌于服務(wù)器之中,此為預(yù)設(shè)運(yùn)行方式。有需要的朋友趕快下載使用吧!
Apache tomcat 10的配置及驗(yàn)證演示說(shuō)明:
1、將下載好的“tomcat_218199.rar”解壓為“apache-tomcat-10.0.8”放至“D:\”
2、找到安裝路徑,安裝路徑是D:\apache-tomcat-10.0.8

3、右擊"我的電腦",點(diǎn)擊"屬性",選擇"高級(jí)系統(tǒng)設(shè)置";

4、點(diǎn)擊環(huán)境變量,出現(xiàn)如下圖所示:

5、在”系統(tǒng)變量“中添加系統(tǒng)變量CATALINA_BASE,CATALINA_HOME;

變量名:CATALINA_BASE
變量值:D:\apache-tomcat-10.0.8 //此處是Tomcat的安裝目錄
6、此處需要修改ClassPath和Path的變量值。
在ClassPath的變量值中加入:%CATALINA_HOME%\lib\servlet-api.jar;(注意加的時(shí)候在原變量值后加英文狀態(tài)下的“;”)

在Path的變量值中加入:%CATALINA_HOME%\bin;%CATALINA_HOME%\lib(注意加的時(shí)候在原變量值后加英文狀態(tài)下的“;”)

在Path的變量值中加入:%CATALINA_HOME%\bin;%CATALINA_HOME%\lib(注意加的時(shí)候在原變量值后加英文狀態(tài)下的“;”)

7、打開(kāi)瀏覽器,輸入 http://localhost:8080 進(jìn)入如下頁(yè)面則表示配置成功。

Apache tomcat 10軟件亮點(diǎn)
1、輕量實(shí)用的小型應(yīng)用服務(wù)器,體積小巧且功能實(shí)用,適配多種輕量場(chǎng)景;
2、廣泛適用于中小型系統(tǒng),在并發(fā)訪問(wèn)數(shù)量不多的場(chǎng)景下,應(yīng)用普及度極高;
3、是開(kāi)發(fā)、調(diào)試JSP程序的首選工具,貼合開(kāi)發(fā)者日常研發(fā)需求;
4、作為Apache服務(wù)器的擴(kuò)展工具,具備獨(dú)立運(yùn)行能力,無(wú)需依賴Apache即可啟動(dòng);
5、運(yùn)行時(shí)以獨(dú)立進(jìn)程形式存在,與Apache進(jìn)程完全分離,互不干擾。
Apache tomcat 10軟件特點(diǎn)
1、配置系統(tǒng)管理完善
多數(shù)商業(yè)化JavaEE服務(wù)器都配備功能強(qiáng)大的管理界面,且多采用易操作的Web應(yīng)用界面。Tomcat同樣提供成熟的管理工具,性能絲毫不遜色于商業(yè)化競(jìng)品。Admin Web Application首次亮相于4.1版本,初期已支持context、數(shù)據(jù)源、及組等管理功能,還可實(shí)現(xiàn)初始化參數(shù)配置、/組/角色的多數(shù)據(jù)庫(kù)管理等操作。后續(xù)版本中這些功能不斷擴(kuò)展,當(dāng)前已具備極高的實(shí)用價(jià)值。
2、應(yīng)用部署便捷靈活
將WAR文件或包含Web應(yīng)用全部?jī)?nèi)容的文件夾,直接拷貝至$CATALINA_BASE/webapps目錄下,即可完成自動(dòng)部署;
創(chuàng)建僅包含context內(nèi)容的XML片段文件,將其放置于$CATALINA_BASE/webapps目錄下,Web應(yīng)用本身可存儲(chǔ)在硬盤任意位置,適配多樣化存儲(chǔ)需求。
3、支持虛擬主機(jī)配置
僅在設(shè)置虛擬主機(jī)時(shí),需修改server.xml中的“Host”元素。虛擬主機(jī)是一種在單一Web服務(wù)器上承載多個(gè)域名的機(jī)制,對(duì)每個(gè)域名而言,仿佛獨(dú)占整個(gè)主機(jī)資源。多數(shù)小型商務(wù)網(wǎng)站均采用虛擬主機(jī)模式,核心原因在于其可直接接入互聯(lián)網(wǎng)并提供穩(wěn)定帶寬,保障訪問(wèn)響應(yīng)速度,同時(shí)還能提供固定且穩(wěn)定的IP地址。
4、基礎(chǔ)驗(yàn)證配置可行
容器管理驗(yàn)證方法用于管控訪問(wèn)受保護(hù)Web應(yīng)用資源時(shí)的身份鑒別流程。當(dāng)Web應(yīng)用啟用Basic Authentication(在web.xml文件的auto-method元素中設(shè)置BASIC參數(shù)),訪問(wèn)受保護(hù)資源時(shí),Tomcat會(huì)通過(guò)HTTP Basic Authentication方式彈出對(duì)話框,要求輸入用戶名和密碼。該驗(yàn)證方式下,所有密碼會(huì)以64位編碼形式在網(wǎng)絡(luò)中傳輸。
5、單點(diǎn)登錄配置支持
完成realm和驗(yàn)證方法設(shè)置后,需進(jìn)行實(shí)際登錄處理。頻繁登錄會(huì)降低體驗(yàn),因此需盡量減少登錄驗(yàn)證次數(shù)。默認(rèn)情況下,首次請(qǐng)求受保護(hù)資源時(shí),每個(gè)Web應(yīng)用都會(huì)要求登錄。若運(yùn)行多個(gè)需單獨(dú)驗(yàn)證的Web應(yīng)用,需反復(fù)登錄,體驗(yàn)極差。難以將多個(gè)獨(dú)立應(yīng)用整合為統(tǒng)一系統(tǒng),對(duì)需訪問(wèn)的應(yīng)用數(shù)量不明確,易對(duì)頻繁登錄產(chǎn)生困惑,而Tomcat支持的單點(diǎn)登錄配置可解決這一問(wèn)題。
Apache tomcat 10軟件新特性
1、局部變量的類型推斷:Java引入類似腳本語(yǔ)言JavaScript中var的弱類型特性,允許通過(guò)var關(guān)鍵字定義任意類型的變量,簡(jiǎn)化代碼編寫;
2、應(yīng)用類數(shù)據(jù)共享(CDS):CDS早在JDK5時(shí)便已引入,用于提升JVM啟動(dòng)性能,同時(shí)減少多個(gè)虛擬機(jī)在同一物理或虛擬機(jī)器上運(yùn)行時(shí)的資源占用。JDK10對(duì)CDS進(jìn)行擴(kuò)展,支持內(nèi)部系統(tǒng)類加載器、內(nèi)部平臺(tái)類加載器及自定義類加載器加載獲取的類,此前CDS僅局限于bootstrap類加載器;
3、額外的Unicode語(yǔ)言標(biāo)簽擴(kuò)展:優(yōu)化java.util.Locale類及相關(guān)API,實(shí)現(xiàn)對(duì)額外BCP47語(yǔ)言標(biāo)簽的Unicode擴(kuò)展支持。其中,貨幣類型、一周第一天、區(qū)域覆蓋及時(shí)區(qū)等標(biāo)簽現(xiàn)已可正常使用;
4、內(nèi)置根證書:JDK中提供一套默認(rèn)CA根證書,TLS等關(guān)鍵安全組件在OpenJDK構(gòu)建中默認(rèn)生效。這是Oracle推動(dòng)OpenJDK二進(jìn)制與Oracle JDK二進(jìn)制功能一致的重要舉措,為安全功能提供基礎(chǔ)保障;
5、并行全垃圾回收器G1:G1設(shè)計(jì)初衷是作為低延時(shí)垃圾回收器(但若無(wú)法跟上舊堆碎片產(chǎn)生速率,仍會(huì)采用完整壓縮集合)。JDK9之前,默認(rèn)收集器為并行吞吐收集器。為減少默認(rèn)收集器下應(yīng)用性能配置文件的差異,G1現(xiàn)已具備并行完整收集機(jī)制;
6、移除Native-Header自動(dòng)生成工具:JDK9開(kāi)啟JDK優(yōu)化整理工作,本特性是該工作的延續(xù)。編譯JNI代碼時(shí),無(wú)需單獨(dú)工具生成頭文件,javac即可完成該操作。未來(lái)JNI可能被Panama項(xiàng)目成果取代,具體時(shí)間尚未明確;
7、垃圾回收器接口:該接口并非供開(kāi)發(fā)者控制垃圾回收,而是JVM源代碼中用于快速便捷集成其他垃圾回收器的接口,降低新回收器的集成門檻;
8、線程-局部變量管控:這是JVM內(nèi)部的底層變更,現(xiàn)已支持在不運(yùn)行全局虛擬機(jī)安全點(diǎn)的情況下實(shí)現(xiàn)線程回調(diào)。此舉可實(shí)現(xiàn)單個(gè)線程的低成本停止,而非只能啟停所有線程;
9、在備用存儲(chǔ)裝置上的堆分配:隨著硬件技術(shù)發(fā)展,非易失性RAM已出現(xiàn),其與傳統(tǒng)DRAM具備相同接口及相近性能特點(diǎn)。本特性使JVM能夠在適配不同存儲(chǔ)機(jī)制的堆上進(jìn)行分配操作;
10、試驗(yàn)性的基于Java的JIT編譯器:Metropolis項(xiàng)目提議用Java重寫大部分JVM,本特性將Graal編譯器研究項(xiàng)目引入JDK,為Metropolis項(xiàng)目落地奠定基礎(chǔ),有望使Java編寫的JVM性能匹敵甚至超越當(dāng)前C++版本。需注意的是,Java編寫的JVM無(wú)需額外JVM運(yùn)行,可通過(guò)AOT編譯,運(yùn)行時(shí)再編譯代碼提升性能;
11、合并JDK多個(gè)代碼倉(cāng)庫(kù)到一個(gè)單獨(dú)的儲(chǔ)存庫(kù)中:JDK9包含root、corba、hotspot、jaxp、jaxws、jdk、langtools和nashorn共8個(gè)倉(cāng)庫(kù),JDK10將其合并為一個(gè),支持跨相互依賴變更集的原子提交操作。