在項目部署上線的時候,會發生各種各樣的錯誤。若按照步驟進行部署,錯誤便會大大的減少。步驟如下:
1、 需要知道有幾台服務器,以及服務器環境搭建的情況。
2、 服務器是否在同一個機房
a) 在同一個機房,通過內網進行通信 -- 速度快
b) 不在同一個機房,通過外網通信 -- 速度慢
3、 服務器的硬件以及操作系統
如果應用程序對計算要求高,則部署在cpu核數較多的服務器。若果應用程序對內存要求較高,則部署在內存較多的服務器上。
應該合理的利用計算機的資源。
a) 硬件
- 內存 -- 多大?
- CPU -- 幾核?
- 硬盤 -- 多大?
- IO讀寫速度 -- 機械硬盤還是SSD(固態硬盤)?
b) 操作系統
- Windows?
- Linux?
- 32? 64?
4、 做最后的功能測試
5、 SVN打tag
與Maven打war包是不一樣的,tag約定只讀,不能修改其中的項目。項目都是基於tag去發布的。tag就是用於項目發布的。
6、 打包程序(Maven)maven打成war包。
7、 數據庫腳本以及初始數據
數據庫腳本及數據也是程序的一部分,不能忘記。
8、 編寫發布文檔
編寫發布文檔很重要,在項目發布的時候,總會出現各種各樣的問題,所以需要寫發布文檔,根據文檔一步一步操作去發布項目。
a) 要將發布的內容以及發布步驟都寫下來
b) 回滾的機制
- 程序的回滾 :項目由新版本到上一個版本的回滾。
- 數據的回滾 :對數據庫的變更可進行數據回滾。
- 系統間的調用關系的回滾
9、 實施發布
需要打包的程序
1.數據庫腳本及數據
2.nginx的配置文件,配置文件是通用的。無論在Windows還是在Linux中。
3.項目中的靜態資源文件上傳目錄也打包。打包成tar.gz
項目打包
maven命令
項目-->Run As -->Maven build...
Goals中輸入命令 clean package (先清除再打包,清除的是target下的內容 。要跳過測試skip tests打勾)可打成war包。