說說為何要熱部署:
你是不是經常做項目,改動了代碼,然後不得不重新開機伺服器。 要是碰到公司足夠吝啬,項目足夠龐大,你會發現大量的時間浪費在這上面。
(我們一直在努力,最大效率的開發出一組組産品,直到做項目跟民工砌磚一樣簡單。還好這還需要一段時間,而我們慶幸我們吃飯的技能還沒有泛濫至此,不過我看有這趨勢。)—跑題
在2002年的時候,Sun在Java 1.4的JVM中引入了一種新的被稱作HotSwap的實驗性技術,并再此後一直着力于相關研究,發現這是一個複雜而低回報的東西。
目前,我們最常用到的熱部署:
Tomcat:
配置:在${tomcat_home}\conf\server.xml
這裡的autoDeploy 設定為true,即自動熱部署,而你隻需體驗他帶來的愉悅:
你可以邊修改代碼,不要重新開機即檢視最新結果;甚至對一些簡單的war應用,可以直接丢到webapp下,不需要重新開機tomcat,自動拆包;
當然,tomcat隻能對部分代碼是可以輕松完成熱部署的,随着項目的複雜度,我們需要更好的熱部署工具。
Jrebel:
此時風頭正熱的jrebel,趕上了這趟車(不知道是不是拿到風投了,到處做廣告),他是收費的,試用一個月,不過對scala語言放寬到了1年,可以申請。位址:
<a href="http://sales.zeroturnaround.com/">http://sales.zeroturnaround.com/ </a>
(題外話:像一度娘就搜到破解的行為,本人是很不贊同的)
jreble 有自己的簡介:
圖1-1: 循環:改變--重新部署等待--檢視結果--改變
1-1
圖1-2: 調查結果,1小時内,有多長時間浪費在重新部署之上
1-2
圖1-3: jrebel帶來了:
1-3
jrebel支援:
IDE:
Eclipse,IntellijIDEA,NetBeans,Oracle,Rational
buildTool:
Maven,ANT
Containers:
Tomcat,JBoss,Jetty,Websphere,resin,SAP,Mulesoft
frameworks:
spring,hibernate,jsf,struts,velocity,wicket
目前最新版本4.6.1
檢視如何安裝jrebel,這個是我非常鄙視他們的一個地方,不能做的如同ant一樣,簡潔配置,而且從第一個版本到現在變化太多,以至于各種泛濫錯誤的資料在網絡上。
本文轉自 wws5201985 51CTO部落格,原文連結:http://blog.51cto.com/yjplxq/839885,如需轉載請自行聯系原作者