Views: 1
這邊簡單整理我上線的一些心得
假設程式碼寫好了大概會歷經幾個階段
- 將程式/資料表….放測試環境
- 寫一個簡單的說明書(看情況可以略過)
- 讓使用者在測試環境測試,並且回報問題
- 修正問題
- 重複3跟4步驟直到使用者覺得OK
- 把測試環境的程式碼跟資料表放到正式環境
- 公告+開說明會,這個也是看情況可以省略
我這邊簡化成幾個準備項目
- 測試版測試通過
- 準備要上版檔案(程式碼、資料表、
DLL) - 說明文件
- 公告
- 規格書(IT內部使用的)
上版的檔案準備
這邊完全依照需求自己安排,我簡單統整成幾塊如下
表單
- 副流程
XML - 表單
XML - 自訂選單設定
- 外部組件設定
Trigger(DLL)- 資料表
TASK 排程
DLLConfig設定- 相關資料表 & 資料表的資料
客製欄位上線
plugIn.xml- 客製欄位相關檔案
檔案準備
一般來說上線前我會準備一個資料夾,這邊是準備要放到伺服器上的檔案
bin,需要放上去的dllCDS,客製檔案表單xml,表單匯出副流程xml,副流程匯出SQL,要在SQL Server 上佈署的檔案config,通常我會把要更新的部分放進去其他
創建自己需要的資料夾就好
進行備份
一般來說只需要備份會異動的部分
- 資料庫,如果資料庫沒有長很大建議上線前備份一次
- 程式檔案,
dll,.asp .asp.cs,通常是在CDS資料夾 - 修改前的檔案
Web.config/plugIn.xml…等等
做法就是我會在伺服器或NAS上放一個專門版更用的資料夾
用日期來區分和何時更新的,如果一天更新幾次我會在日期加上_1 _2 作為區分
匯出表單XML 教學
電子簽核 > 表單設計 > 匯出表單
這邊只需要匯出準備上線的那一版就好
瀏覽器通常會擋住xml 記得按保留
匯出副流程XML 教學
電子簽核 > 副流程設計
點副流程類別,然後按匯出類別流程,這樣可以把整組類別匯出
瀏覽器通常會擋住xml 記得按保留
匯出SQL 指令碼教學
一般我都靠SSMS完成,這一步其實是我比較常被問到的
- 對著開發環境的資料庫按下右鍵
- 工作
- 產生指令碼
務必只勾選要匯出的資料表,然後按下一步
這邊通常要點「進階」,進去調整選項。
這邊我選
SQL SERVER 2016Microsoft SQL Server Standard Edition(標準版)Schema and data(資料表結構與資料)
我習慣選,「開啟新查詢視窗」,看一下產生的資料對不對。
檢查沒問題的話按下存檔就可以了
測試版更新
測試跟正式更新其實差不多,但正式版更新需要先公告停機(甚至送簽呈),測試版就沒這個限制。
- 關係到排程的部分要先停用服務
- 其他的貼上
- 資料庫執行對應的SQL
停用UOF2的服務
這個也很多人問服務在哪邊..
其實也可以用搜尋的,不過我習慣從伺服器管理員找到「服務」
然後找到Ede.Uof.Utility.Task.Engine.UOFTEST 這是UOF的排程服務名稱,然後按下停止
⚠️務必在更新之後重新
「啟動」
如果忘了,UOF2很多功能都會失效,像是寄送簽核通知信。
有些DLL有被排程使用到,因此要停止後才能覆蓋。
覆蓋檔案
通常只要停止排程+備份好,就能開始覆蓋跟修改檔案了
這邊只有幾種檔案會採用覆蓋的方式
DLLaspxaspx.cs
編輯設定
設定的部分先存檔備份,存檔後用Notepade++或記事本加上需要的設定
停止站台
通常不太需要,不過正式版更新時候我都會先停止站台,避免同仁使用站台
做法是在站台目錄建立一個app_offline.htm 這樣IIS就會讓整個站台進入維護狀態
此部分可以參考微軟的說明
暫時封鎖網站存取
如果不想停止站台,但又要允許本機使用,不讓外部連線,這時候可以使用防火牆擋住
⚠️注意 這台伺服器其他的IIS站台也會同時無法存取
停機公告範本
這邊可以靠AI產一下,我提供簡單的停機公告範本
主旨:EIP系統停機維護公告
內文:
各位同仁您好:
EIP系統將於(日期 時間起迄) 進行停機維護,屆時將EIP將暫停服務,如造成您的不便敬請見諒。
教學文件
這邊簡單寫一下我的作法
我習慣用Power Point做,常見的agenda有
- 表單流程說明
- 申請者填寫
- 簽核說明
- 其他角色填寫說明
- 報表說明
說明會準備
- 公告時間,前一天跟當天要提醒一下參與的同事
- 簽到單
- 畫面與聲音錄影
- 現場測試用筆電數台
上線的時間點選擇
我個人偏好 週二至週四早上進行上線,原因如下
- 多數的系統在周一跟周五系統會有許多排程在跑,所以不上線
- 下午上線有問題容易找不到救援投手幫忙
然後我自己有個取巧的方法,有些東西可以先放上去但不發布,這幾個放上去不太會導致IIS重新啟動系統
CDS下的檔案(有點機會導致)- 表單
XML匯入 - 副流程
XML匯入 App_Data的設定 像是plugIn.xml
一定會導致IIS重啟的更新
bin底下的DLL(通常還要配合停用排程)Web.config
然後不想公告停機的話,前一天先把檔案準備好,可以先匯入的XML先匯入好,通常我會早半個小時到公司,在同仁都還沒到之前,先進行更新作業。
客製欄位改版要注意的部分
- 要處理新舊版本相容資料問題,如果改動過大我會乾脆弄一張新表單跟新的客製欄位,然後停用舊表單後再上線。
- 如果是原表單只改檔案我會更新檔案後發行新版本。
0 Comments