本文為技術討論,思路記錄,為以后如有需要用到此業務場景提供參考,
業務背景:
一個中小型企業,擁有多個軟體產品,服務的客戶的需求也是五花八門,有時候用一個版本庫會極難處理和均衡各方需求,出于管理方便,可能就每個客戶有對應的一套原始碼進行管理,因此需要有一套自動化管理軟體的發布服務程式,否則版本管理的作業量將是巨大的,并且是容易出錯的,
技術實作:
1、事務管理系統(需求和BUG的管理資訊系統)
2、SVN(原始碼管理系統)
3、WebService(發布程式的介面服務)
4、Oracle(資料存盤:存盤每次發版任務資訊和結果,以及各個原始碼程式配置等資訊)
5、后臺服務程式(發布主服務程式)
6、FTP(FTP服務器,后臺發布成功的程式,通過FTP上傳到FTP服務器,提供個測驗人員和現場實施人員下載)
7、短信系統(發布結果通過短信提醒提交發布請求的人)
業務邏輯:
1、作為一家以軟體專案為主體的軟體公司,一般都會擁有一套事務管理系統(采購第三方或者自己開發),事務管理系統能夠記錄各個業務系統的需求,BUG,以及發布請求,能對這些事務進行跟蹤,
2、事務管理系統中的發布版本事務,需要和WebService進行互動,能夠提交相應的發布請求,當然事務系統和發布系統之間處理發布請求,還要對專案的管理,專案各個模塊等資訊進行資料互通處理,
3、SVN作為免費開源的原始碼管理器,相對也穩定,用作公司的原始碼服務器還是比較合適的,
4、Oracle資料庫存盤各種資訊(各個軟體專案資訊,服務的客戶資訊,軟體產品模塊,各個軟體專案對應的原始碼庫資訊,以及發布程式最新資訊等,各種事務資訊等等)
5、后臺服務程式(作為軟體發布服務的核心,需要能夠實作可配置多臺的發布服務器,并且實作負載均衡,有詳細的錯誤日志資訊,支持發布多種程式語言,例如:C#,ASP.NET,PB,Java)
6、后臺服務程式發布結果能夠通過郵件的方式發送給事務提交者,并且把輸出日志和錯誤資訊一并發送,這里不考慮把發布程式也通過郵件發送給發布者,因為一般郵件附件大小都會有限制,會給系統造成局限性,
7、發布后的程式統一上傳到FTP服務器上,不同的專案存盤的路徑不同,提供給客戶使用下載的FTP用戶和密碼也不相同,這樣可以便于控制管理,
8、短信系統,發布成功或者失敗,將會通過短信通知提交發布請求的用戶,
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/123959.html
標籤:C#
上一篇:C# 時間戳的相關操作
下一篇:C#面向物件--封裝
