国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

nginx - JAVA 項目WAR包部署的適用場景?

瀏覽:84日期:2023-08-14 11:59:52

問題描述

部署項目時一直用文件夾方式部署項目,近期嘗試使用WAR包項目部署,遇到了下面的問題:

上傳文件位置指定本地路徑,但由于獨立在項目外,還需要單獨配置項目才能訪問

公司項目數量多(1臺服務器200左右,20臺左右)時,每個項目這樣配置,運維工作十分繁重

維護時只調整了一個css或JS文件,卻要重新打包發布

對比之前文件夾方式,實在是很麻煩,想問下有經驗的同學:

你遇到的使用WAR包方式的應用場景是什么?

如何解決我遇到的問題?

問題解答

回答1:

以下是我的實戰運維經驗:

配置應當是獨立于項目的,這樣可以只打一次war包,而運用到不同環境上;

運用自動化運維工具,如SaltStack、Ansible或Jenkins來幫助你批量操作;

如果預料到靜態資源會頻繁改動,最好跟Java項目分開來,部署到不同站點,或者用nginx做分流;

建議部署程序去解壓war文件(而不是讓Tomcat自己來解壓),停掉Tomcat,ROOT目錄用ln -s定向到新的目錄,再啟動Tomcat,這樣Tomcat會跑得更流暢;

舊有的目錄暫時不要刪,如果部署錯了,用ln -s把ROOT目錄切換到舊的,就能實現快速回滾。

回答2:

實際經驗:我經手過的項目都是在weblogic上以目錄的形式發布,目錄結構:

DOMAINS --域└─domainA --域A └─apps--應用└─app1 --應用1 ├─deploy --部署 │ ├─src --Java源代碼(僅限項目實施開發的源代碼,不包含應用庫的源代碼),服務器統一編譯一次防止Java版本問題以及編碼問題 │ └─war --標準war包結構 ├─patch --增量更新目錄 ├─runtime --運行時目錄,日志,用戶文件之類的 └─tmp --臨時目錄

我按照這種標準結構寫了若干shell腳本來運維任務自動化,就是啟停,監控,更新什么的,其實也就花了幾天時間,代碼也不多,但是現在我再也沒有手動干過運維的事情了。

基本流程就是:代碼開發提交-->SVN導出增量更新包-->上傳至服務器-->服務器上執行

改一個html頁面都要重新打包,萬一打錯文件進去咋辦? 靜態的可以單獨發布,那我他媽就改一個JAVA也要重新打包就活該啦?

沒有一個容器是真正在war包里面發布和服務應用的,都是解壓到某個臨時位置,war包是壓縮格式,你讓任何一個容器每服務一個請求都去讀取壓縮文件里面的資源肯定會有性能問題的(至少JSP都是這樣)。

這是我的個人經手的一些小型項目的解決方案,大型項目,你可能需要全流程工具鏈,就是什么持續集成什么的。

標簽: java
相關文章:
主站蜘蛛池模板: 国产日韩久久久精品影院首页 | 免费视频久久久 | 日本在线观看免费看片 | 手机毛片在线 | 99精彩视频在线观看 | 偷自拍第一页 | 亚洲va中文字幕欧美不卡 | 久久国产亚洲 | 日韩 欧美 国产 师生 制服 | 一区二区三区在线播放视频 | 国产精品久久久久久久久久久久 | 成人免费视频网址 | 日本国产免费一区不卡在线 | 爽爽在线 | 亚洲精品一区二区三区美女 | 毛片视频网站在线观看 | 亚洲精品一级一区二区三区 | 国产亚洲一区二区手机在线观看 | 国产成人精品曰本亚洲77美色 | 国产一区二区三区在线免费观看 | 一级毛片区 | 中文字幕天堂久久精品 | 亚洲国产片 | 97国产在线视频公开免费 | 亚洲视频 中文字幕 | 波多野结衣视频在线观看地址免费 | 免费一级毛片在线播放欧美 | 综合久久影院 | 日本亚州在线播放精品 | 黄色三级三级三级 | 91精品欧美一区二区综合在线 | 亚洲精品一区最新 | 中文国产成人精品久久一 | 成人深夜福利在线播放不卡 | 色射网 | 99成人免费视频 | 国产91在线 | 亚洲 | 免费一区二区三区久久 | 成年人在线视频观看 | 日韩不卡一区二区三区 | 欧美大尺度xxxxx视频 |