一個非常簡單的問題。我有一個.war(〜40MB)文件在JBoss上運行。 什麼是部署的最佳實踐:戰爭文件是否應以分解格式部署?或不?Java webapp部署:爆炸還是不爆炸?
我問,因爲如果然後爆炸我已經更新我的屬性的選擇文件只要我選擇(而不必盡我更改屬性文件時,一場新的戰爭)。
但我不知道,如果部署在展開的格式戰爭是最好的做法。
請幫我意識到。 :)
一個非常簡單的問題。我有一個.war(〜40MB)文件在JBoss上運行。 什麼是部署的最佳實踐:戰爭文件是否應以分解格式部署?或不?Java webapp部署:爆炸還是不爆炸?
我問,因爲如果然後爆炸我已經更新我的屬性的選擇文件只要我選擇(而不必盡我更改屬性文件時,一場新的戰爭)。
但我不知道,如果部署在展開的格式戰爭是最好的做法。
請幫我意識到。 :)
修改爆炸內容肯定是更快,更有效,但一個考慮因素是審計和可追溯性。僅部署WAR文件並將其視爲「密封」的一個優點是,您所做的任何更改都必須在源代碼管理系統中捕獲。您當然不希望人們有能力在您的應用程序配置中更改他們所需的任何內容,而無需進行某種審計跟蹤。
Java EE分離關注點通常意味着WAR的開發人員與應用程序服務器的管理員不是同一個人。如果開發人員沒有直接訪問權限,那就意味着不瞭解應用程序的人們正在進行更改。我不是捍衛禁止開發者修改爆炸戰爭的極端心態,只是指出另一種可供您考慮的觀點。
如果你需要在你的.war中更改配置,而無需重新部署,我寧願部署爆炸。否則,我寧願部署文件(然後jboss會將文件解壓縮到tmp/deploy/..
)
但是,對於生產環境以分解格式進行部署是否「可以」? – pavanlimo
是的,當然。許多其他出版商也這樣做(例如TeamCity,Hyperic HQ,...) – powerMicha
感謝@powerMicha提供的信息。無論如何,你是否知道任何討論java web-app部署最佳實踐的文檔/文章? – pavanlimo
戰爭文件應該以分解格式部署嗎?或不?
這將取決於幾個因素:
這是相當詳細。謝謝Vineet。 – pavanlimo
@ pavanlimo,不客氣。 –
所以你也可以改變性質,即使部署爲戰爭它得到反正爆炸......這都沒有區別。至少在開發環境中。
但是,如果你是在展開的格式生產部署,所以你可以改變屬性的文件是不是你需要部署後改變(生產)性能更大的問題?而不是你是否使用過戰爭。
我無法清楚地理解您,但是如果您重新啓動服務器,則由於未變形發生在臨時位置,因此更改的屬性文件會被原始屬性文件替換。 – pavanlimo
@pavanlimo我知道,我們在開發過程中在臨時位置更改了文件。我不確定你是否正在開發或生產。我的觀點是你應該看看你爲什麼要改變生產環境中的屬性(如果你是)。如果你在談論dev,它不重要,imho,但我更喜歡戰爭。 – NimChimpsky
此外,誰決定將其稱爲'爆炸'而不是'提取'?當然,它更有趣,但是我們所有的人都應該叫它是什麼:)。 – bbarker