999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Tomcat7 動(dòng)態(tài)部署的研究

2014-12-31 00:00:00秦毅
人間 2014年24期

摘要:Web應(yīng)用程序可以通過在Web服務(wù)器啟動(dòng)之前進(jìn)行部署,這種靜態(tài)部署的方式并不靈活,部署和卸載都需要對(duì)服務(wù)器進(jìn)行操作,而動(dòng)態(tài)部署則可以在服務(wù)器運(yùn)行的狀態(tài)下部署Web應(yīng)用程序。Tomcat7通過自帶的Web應(yīng)用程序manager,全面支持動(dòng)態(tài)部署,并且能夠?qū)Ψ?wù)器中Web應(yīng)用程序進(jìn)行管理。

關(guān)鍵詞:Web服務(wù)器;靜態(tài)部署;動(dòng)態(tài)部署;Web應(yīng)用程序

中圖分類號(hào):[G714] 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1671-864X(2014)08-0184-02

一、引言

動(dòng)態(tài)部署,名如其意,就是在Web服務(wù)器運(yùn)行時(shí)部署依賴它的Web應(yīng)用程序。對(duì)于所欲的Web服務(wù)器來說,動(dòng)態(tài)部署是一個(gè)非常有必要實(shí)現(xiàn)的功能,除了能部署新的Web應(yīng)用程序之外,還能夠?qū)Υ嬖诘捻?xiàng)目取消部署,而這些都是在服務(wù)器仍處于運(yùn)行狀態(tài)的情形下實(shí)現(xiàn)的。本文以Apache Tomcat服務(wù)器為例,對(duì)其動(dòng)態(tài)部署的方式進(jìn)行研究。

二、Tomcat7簡(jiǎn)介

Tomcat是由Apache軟件基金會(huì)下屬的Jakarta項(xiàng)目開發(fā)的一個(gè)Servlet容器,依照原Sun Microsystems提供的技術(shù)規(guī)范,實(shí)現(xiàn)了對(duì)Servlet和JavaServer Page(JSP)的支持,并提供了作為Web服務(wù)器的一些特有功能[1]。由于Tomcat本身也內(nèi)含了一個(gè)HTTP服務(wù)器,它也可以被視作一個(gè)單獨(dú)的Web服務(wù)器。因?yàn)橥瑢儆贏pache軟件基金會(huì)的下屬項(xiàng)目,經(jīng)常會(huì)有程序員混淆Apache Web Server和Tomcat,認(rèn)為它們就是一個(gè)服務(wù)器;其實(shí)不然,Apache Web Server 是一個(gè)用 C 語言實(shí)現(xiàn)的 HTTP Web Server,一個(gè)完全的Web服務(wù)器。

Tomcat7始于2010年,最初的版本是7.0.0beta,在2011年1月11日發(fā)布的Tomcat 7.0.6已經(jīng)成為穩(wěn)定版本,這是Tomcat 7分支的第一個(gè)穩(wěn)定版本,用來取代2007年2月發(fā)布的Tomcat 6,Tomcat7修復(fù)大量的原有bug,包括其中各個(gè)模塊,如Catalina,Coyote,Jasper等,其中包括一些比較嚴(yán)重的如內(nèi)存泄露問題,線程安全問題等。

三、Tomcat7下實(shí)現(xiàn)動(dòng)態(tài)部署

Tomcat通過自帶的Web應(yīng)用程序manager來實(shí)現(xiàn)對(duì)容器中的Web應(yīng)用程序目錄或是WAR文件進(jìn)行動(dòng)態(tài)部署。

1.manager權(quán)限設(shè)置。

由于版本的更新,Tomcat7和6相比較,在權(quán)限配置方面變的更細(xì)微,原來Tomcat6中的manager應(yīng)用程序的權(quán)限在7中被細(xì)分為4種,這些權(quán)限的名字都被定義在Tomcat7提供的manager應(yīng)用程序目錄下的\WEB-INF\web.xml文件中,它們是分別是manager-gui,manager-status,manager-script和manager-jmx,其描述見表1。

表1

角色名描述

manager-gui允許訪問HTML接口

manager-status僅允許訪問訪問“Server Status”頁面

manager-script允許訪問“Server Status”頁和文檔里友好的簡(jiǎn)單text接口

manager-jmx允許訪問“Server Status”頁和JMX代理接口

其中HMTL接口包含manager應(yīng)用中的圖形界面,有效能防止跨站點(diǎn)偽造請(qǐng)求(Cross-Site Request Forgery,CSRF)的攻擊,但是text和JMX就不具備這樣的能力。text接口通過查詢字符串的方式在地址欄用manager支持的指令管理容器內(nèi)的Web應(yīng)用程序。這里以manager-gui為例,來看一下web.xml文件中權(quán)限的設(shè)置和角色的聲明,代碼如下:

HTML Manager interface (for humans)

/html/*

manager-gui

MemoryRealm是域(Realm)的一種,用來讀取保存在\conf\tomcat-users.xml文件中的角色和用戶名、密碼的關(guān)聯(lián)信息。

在tomcat-user.xml文件中配置角色和管理用戶的代碼如下:

tomcat-users.xml文件可以設(shè)置不同的角色,使用這些角色名和權(quán)限的前提條件是在包含它們的Web應(yīng)用程序目錄下的web.xml中聲明。

當(dāng)完成上述操作之后,便可以通過瀏覽器打開tomcat的歡迎界面,選擇“Manager App”入口,把tomcat-users.xml文件中自定義的用戶名和密碼在彈出的登錄對(duì)話框中輸入,即進(jìn)入tomcat7中的manager應(yīng)用中,動(dòng)態(tài)的配置當(dāng)前tomcat容器中所有被部署的Web應(yīng)用程序,包括manager本身。

2.圖形化的動(dòng)態(tài)部署。

完成Tomcat7中manager應(yīng)用的權(quán)限配置后,在命令提示符下啟動(dòng)Tomcat服務(wù)器,在瀏覽器中輸入http://localhost:8080進(jìn)入Tomcat的歡迎界面,選擇“Manager App”入口,在彈出的用戶名和密碼對(duì)話框中輸入tomcat-users.xml配置好的用戶名和密碼,則可以進(jìn)入圖形化動(dòng)態(tài)部署模式。

圖形化部署模式提供下列9種功能:

· 通過直接指定WAR文件,部署一個(gè)新的Web應(yīng)用程序

· 通過在服務(wù)器文件系統(tǒng)中指定Web應(yīng)用程序的上下文路徑來部署一個(gè)新的應(yīng)用

· 提供服務(wù)器中當(dāng)前被部署的所有Web應(yīng)用程序列表和這些應(yīng)用中被激活的會(huì)話信息

· 通過對(duì)\WEB-INF\classes和\WEB-INF\lib目錄中文件的監(jiān)視和反射,重新加載容器中已存在的Web應(yīng)用程序

· 提供當(dāng)前操作系統(tǒng)和Java虛擬機(jī)的屬性列表

· 提供可用的全局可用的JNDI資源列表,在部署工具中通過在部署描述符中嵌入元素即可訪問JNDI資源

· 啟動(dòng)已經(jīng)停止的Web應(yīng)用程序

· 停止正在運(yùn)行的Web應(yīng)用程序

· 卸載已經(jīng)部署的Web應(yīng)用程序,并刪除其根目錄的文檔

圖形話部署模式可以是開發(fā)人員方便快捷對(duì)Web應(yīng)用程序進(jìn)行部署,并對(duì)容器中存在的應(yīng)用進(jìn)行管理。

3.指令化的動(dòng)態(tài)部署。

除了圖形化的部署方式外,manager應(yīng)用程序還提供指令化的動(dòng)態(tài)部署模式。指令化的部署實(shí)際上是在地址欄通過text接口輸入部署的指令和參數(shù)即可實(shí)現(xiàn)指令化的部署模式,所有manager已知的指令通過在獨(dú)立的請(qǐng)求URI指定而被執(zhí)行。

指令化的動(dòng)態(tài)部署模式URI格式如下:

http://{host}:{port}/manager/text/{command}?{parameters}

{command}代表manager應(yīng)用下程序員需要執(zhí)行的指令,{parameters}表示針對(duì)URI中的指令提供的查詢參數(shù)。

manager中常用指令如下:

list:提供Tomcat容器中當(dāng)前Web應(yīng)用程序列表

reload:重新加載Web應(yīng)用程序

serverinfo:服務(wù)器信息

sessions:會(huì)話管理

start:?jiǎn)?dòng)Web應(yīng)用程序

stop:停止Web應(yīng)用程序

deploy:部署新的Web應(yīng)用程序

undeploy:卸載存在的Web應(yīng)用程序

這些指令有些可以單獨(dú)使用,如list,而大部分需要使用“?”連接參數(shù)一起使用,manager應(yīng)用提供的參數(shù)包括path、version、war等。

本文主要闡述deploy指令部署新的Web應(yīng)用程序。

通過Web應(yīng)用程序上下文部署

http://localhost:8080/manager/text/deploy?path=/foo

其中Web應(yīng)用程序的上下文通過path參數(shù)指定為/foo。

通過URL部署Web應(yīng)用程序目錄

http://localhost:8080/manager/text/deploy?path=/footoowar=file:/path/to/foo

其中Web應(yīng)用程序的上下文通過path參數(shù)指定為/footoo,程序目錄則通過war參數(shù)指定,由于部署的是文件目錄,所以需要指定文件協(xié)議file。

通過URL部署WAR

http://localhost:8080/manager/text/deploy?war=jar:file:/path/to/bar.war!/

使用URL部署WAR的特殊之處在于需要把jar和file連接使用,并且WAR文件不能在URL中以擴(kuò)展名war結(jié)束,需要在之后添加“!/”。

通過Host appBase部署Web應(yīng)用程序目錄

http://localhost:8080/manager/text/deploy?war=foo

Host appBase表示服務(wù)器的應(yīng)用程序跟目錄,在Tomcat中即為webapps,使用這種方式部署需要事先把Web應(yīng)用程序目錄拷貝到appBase中,不需要指定應(yīng)用程序的上下文,直接提供Web應(yīng)用程序在appBase下的相對(duì)路徑即可。

通過Host appBase部署WAR

http://localhost:8080/manager/text/deploy?war=bar.war

和部署目錄方式一致,通過Host appBase部署WAR時(shí),事先要把WAR文件拷貝到appBase目錄下,然后使用war參數(shù)直接指定WAR文件即可。

四、總結(jié)

Tomcat7作為一款靈巧的HTTP服務(wù)器,最新版本已經(jīng)提供了對(duì)Servlet3.0和JSP2.3的支持。通過Tomcat7提供的動(dòng)態(tài)部署方式能夠簡(jiǎn)單快速的對(duì)Web應(yīng)用程序進(jìn)行部署,使用圖形化的模式直觀且方便,并且可以輕松的對(duì)容器中已經(jīng)部署的Web應(yīng)用程序和會(huì)話進(jìn)行管理;指令化的模式能夠讓程序員以更快捷的方式對(duì)Web應(yīng)用程序進(jìn)行部署和卸載,前提是熟悉manager下的指令和參數(shù)。

參考文獻(xiàn):

[1]維基百科.Apache Tomcat.2013-6.[DB/OL]http://zh.wikipedia.org/wiki/Apache_Tomcat

[2]孫衛(wèi)琴. Tomcat與Java Web開發(fā)技術(shù)詳解(第2版).電子工業(yè)出版社[M].2009-1。

[3] Budi Kurniawan著. 曹旭東譯. 深入剖析Tomcat.機(jī)械工業(yè)出版社[M].2012-1。

主站蜘蛛池模板: 国产性精品| 欧美成人亚洲综合精品欧美激情| 欧美一级专区免费大片| 青青草原国产精品啪啪视频| 好吊妞欧美视频免费| 全裸无码专区| 国产丝袜无码一区二区视频| 天堂在线视频精品| 国产丝袜丝视频在线观看| 国产麻豆aⅴ精品无码| 国产色爱av资源综合区| 国产成人高清在线精品| 亚洲床戏一区| 亚洲无码高清视频在线观看 | a级毛片免费网站| 一本一道波多野结衣一区二区| 国产人人射| 九九九九热精品视频| 四虎精品国产AV二区| 91免费观看视频| 99精品热视频这里只有精品7 | 免费无码网站| 中文字幕第4页| 亚洲经典在线中文字幕| 免费高清毛片| 国产91丝袜在线播放动漫| 9999在线视频| 暴力调教一区二区三区| 少妇精品在线| 日韩色图区| 美女毛片在线| 国产精品手机在线播放| 美女内射视频WWW网站午夜 | 五月婷婷亚洲综合| 日韩欧美国产精品| 日本不卡在线| 日韩无码黄色| 国产精品亚洲片在线va| 在线观看欧美国产| 亚洲国产日韩视频观看| 99久久精品视香蕉蕉| AV不卡无码免费一区二区三区| 高清无码一本到东京热| 在线欧美一区| 欧美成一级| 欧美成人午夜影院| 国产乱人乱偷精品视频a人人澡 | 午夜a级毛片| 在线亚洲精品福利网址导航| 亚洲综合片| 国产免费看久久久| 亚洲Av激情网五月天| 国产精品久久精品| 国产精品久久久久婷婷五月| 97久久人人超碰国产精品| 国产高清免费午夜在线视频| 色久综合在线| 成人毛片免费观看| 日本人真淫视频一区二区三区 | 嫩草国产在线| 亚洲A∨无码精品午夜在线观看| 91久久国产综合精品女同我| 亚洲国产日韩一区| 亚洲欧美日韩精品专区| 国产亚洲欧美另类一区二区| 国产xx在线观看| 影音先锋丝袜制服| 国产麻豆精品久久一二三| 国产成人免费| 无码免费视频| 久久亚洲精少妇毛片午夜无码 | a级毛片毛片免费观看久潮| 色老二精品视频在线观看| 九九精品在线观看| 超碰免费91| 国产成人8x视频一区二区| 一级一毛片a级毛片| 高h视频在线| 麻豆国产精品视频| 国产18页| 国产高清又黄又嫩的免费视频网站| 久青草网站|