IBM邀請(qǐng)我們公司試用websphere application server v8.5 liberty profile,因此經(jīng)理讓我下載下來安裝,測(cè)試一下,正好我正對(duì)這個(gè)新東西也挺感興趣的,所以在此把過程記錄下來.
一、簡(jiǎn)介
Liberty profile是WAS V8.5的一個(gè)新特性,它代表WAS服務(wù)器上的App正常運(yùn)行必須的一組運(yùn)行時(shí)環(huán)境集合,這個(gè)環(huán)境是可以動(dòng)態(tài)配置的。簡(jiǎn)單說Liberty profile就是WAS8.5的精簡(jiǎn)版,具有占用空間少、啟動(dòng)速度快、調(diào)試方便、完全支持JavaEE、App無縫移植到WAS8.5等特性,特別適合 開發(fā)測(cè)試階段使用。
二、安裝,部署
1.前提:
確保計(jì)算機(jī)上正確安裝了JDK1.6或以上版本,Eclipse3.7或以上版本(可選)。
2.安裝Liberty profile
將下載得到的Zip包was4d-20111202-0614.zip,解 壓到磁盤任意目錄下,無誤后安裝完畢??梢詤⒄崭夸浵碌膔eadme.txt文件,掌握Liberty profile的基本配置管理。在這里假設(shè)Liberty profile的安裝目錄為<install.dir>。
3.創(chuàng)建server實(shí)例
Liberty profile繼承了WAS的profile特性,即運(yùn)行時(shí)環(huán)境可以以實(shí)例的形式單獨(dú)動(dòng)態(tài)配置,實(shí)例之間互不影響。因此,進(jìn)入cmd模式下 cd bin ,然后was4d.bat create myserver,這樣就創(chuàng)建了一個(gè)名稱為myserver的運(yùn)行時(shí)環(huán)境實(shí)例,其磁盤路徑為<install.dir>\usr \servers\myserver,我們開發(fā)的App可以部署到myserver目錄下的dropins文件夾中運(yùn)行,供外界訪問。
4.安裝Liberty profile Eclipse開發(fā)插件
在Eclipse Marketplace中鍵入websphere,在隨后的結(jié)果列表中找到websphere application server v8.5 liberty profile beta一項(xiàng),點(diǎn)擊install安裝,完畢后重啟Eclipse。
5.在Eclipse中引用myserver實(shí)例
在Eclipse 中的Server視圖中右擊 New-Server,在彈出框中選擇IBM- websphere application server v8.5 liberty profile beta,然后根據(jù)提示選擇myserver實(shí)例即可,無誤完畢后會(huì)在Server視圖中出現(xiàn)websphere application server v8.5 liberty profile beta at localhost 一項(xiàng),右擊websphere application server v8.5 liberty profile beta at localhost選擇start,此時(shí)Console視圖會(huì)出現(xiàn)myserver啟動(dòng)日志,“The feature update is complete after …”表示啟動(dòng)成功。
6.開發(fā)App
在Eclipse中新建一個(gè)簡(jiǎn)單的Java Web App 命名為hello-app,在其index.jsp頁(yè)面中輸入hello world即可。
7.App部署和卸載
部署和卸載行為可以在兩個(gè)地方發(fā)生,一個(gè)是server.xml配置文件中,另一個(gè)是dropins目錄.
(1) 在 myserver目錄下找到server.xml文件并打開,加入”<application id="hello-app" location="hello-app.war" name="hello-app" type="war"/>”即可完成部署,刪除這句話即可完成卸載,即便myserver處于運(yùn)行狀態(tài)也可以這樣操作,因?yàn)閟erver.xml是 可以即時(shí)更新的,所做的修改能夠馬上生效。相對(duì)于tomcat這是Liberty profile的一個(gè)優(yōu)勢(shì),當(dāng)tomcat的server.xml內(nèi)容被修改修改時(shí)必須重啟才能生效。這種部署方式適用于開發(fā)階段。
(2) 直接將war包扔進(jìn)myserver目錄下的dropins文件夾中即可完成部署,刪除此war包機(jī)完成卸載,這種部署適用于實(shí)施階段。
8.訪問App
在瀏覽器中鍵入http://localhost:9080/hello-app/index.jsp,頁(yè)面顯示hello world,說明App部署成功,運(yùn)行正常。
三、Liberty,Tomcat6,was比較
Tomcat 和was的比較很簡(jiǎn)單,一個(gè)開源一個(gè)商用,開源的Tomcat小巧,靈活適合做開發(fā)測(cè)試,商用的was它提供了一個(gè)平臺(tái),你可以基于各種增值功能、使用 Process Server、MQ等等更先進(jìn)而穩(wěn)定的架構(gòu)來構(gòu)建應(yīng)用.對(duì)于并發(fā),高性能訪問的處理能力會(huì)更強(qiáng).
由于Liberty profile 是 was 的簡(jiǎn)易版本,所以Liberty profile只適合開發(fā)相對(duì)比較簡(jiǎn)單的App,而這個(gè)App可以無縫移植到WAS上.
Tomcat6 與 Liberty profile的比較,紅色為各自的優(yōu)勢(shì)
Tomcat6 Liberty profile
占用空間 27MB 56MB
啟動(dòng)時(shí)間 996ms 1600ms
配置復(fù)雜度 較復(fù)雜,配置文件較多 很簡(jiǎn)單,可以無配置文件
Server.xml
即時(shí)更新 不支持,需重啟生效支持,即時(shí)生效
運(yùn)行環(huán)境
多實(shí)例 不支持,靈活性較差支持,靈活性較高
Java EE
規(guī)范支持 不支持serverlet3.0支持serverlet3.0
支持jpa2.0 支持jpa2.0
不支持EJB 不支持EJB
四、總結(jié)
之前開發(fā)WAS應(yīng)用時(shí),如果這個(gè)App不依賴于容器,我們通常的做法是在Tomcat中開發(fā)測(cè)試,在WAS中部署運(yùn)行,而部署時(shí)App的配置文件必定要做相應(yīng)的修改,比如JNDI。
現(xiàn)在不用了,我們有了Liberty profile----WAS的一組運(yùn)行時(shí)環(huán)境,它與Tomcat一樣免費(fèi),輕巧,快速,靈活,而且開發(fā)的應(yīng)用不做任何修改就能移植到WAS上。
相對(duì)于與Tomcat6,Liberty profile支持最新的JavaEE規(guī)范,增加了很多功能更加強(qiáng)大,使用非常方便的特性,所以Liberty profile比Tomcat更優(yōu)秀,即便App不是基于WAS也可以使用Liberty profile進(jìn)行開發(fā)測(cè)試。