服務類升級的原理與操做順序是,先選擇好要升級的服務文件後,在升級器編譯好服務文件,成功後,點擊【一鍵升級】(程序會先壓縮服務程序包,上傳到指定ftp後,啓動服務端wcf任務,先下載ftp上的升級包後,中止待升級Windows服務,並進行壓縮備份成功後,刪除待升級服務所在文件夾下的全部文件【這裏有待優化】後,直接將升級包的文件解壓到服務所在文件夾,完成此動做後,從新開啓,Windows服務),成功一鍵升級後,就能夠根據本身的配置自動測試,我這裏是測試的wcf實現restful的相關接口測試,若是升級不成功,能夠直接點擊【一鍵回滾】,服務端Wcf能夠直接用剛備份好的程序覆蓋到服務所在文件夾,下面就列出每個動做的截圖html
A、配置UpdateServiceConfig.xml,內容以下:json
<serviceconfig key="YBFWebApiServiceController" value="WebAPi微服務" target="test-lan"服務器
publishpath="F:\\win8file\Y-BaseFramework.YBF\\YBaseFramework.YBF.Publish\\YBF.WebApiServiceController"restful
uploadlocalpath="F:\\win8file\\Y-BaseFramework.YBF\\YBaseFramework.YBF.Web\\YBaseFramework.YBF.AutoDeployManageTool\\bin\\Debug\\UpdatePack\\{0}.zip"微服務
stopservices="stop"工具
bakservices="F:\\win8file\\Y-BaseFramework.YBF\\YBaseFramework.YBF.ServicesRun\\YBF.WebApiServiceController"post
startservices="start"測試
wcfserviceurl="http://127.0.0.1/Local/LocalService.svc"> 優化
<command name="Build">ui
<![CDATA[
%SYSTEMROOT%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe F:\win8file\Y-BaseFramework.YBF\YBaseFramework.YBF.ApiServices\YBaseFramework.YBF.ApiServices.sln /t:Rebuild /p:Configuration=Debug /l:FileLogger,Microsoft.Build.Engine;logfile=logs/Build.log
]]>
</command>
</serviceconfig>
<!--publishpath 發佈服務程序路徑-->
<!--uploadlocalpath 上傳更新包-->
<!--stopservices 中止服務-->
<!--bakservices 備份服務-->
<!--startservices 開啓服務-->
<!--wcfserviceurl 自動化服務器端訪問地址-->
<!--value 名稱-->
<!--target test-lan online-wan -->
以上內容請根據本身的實際狀況進行配置,若有問題能夠聯繫我。
B、編譯服務項目,如圖
圖1
表示編譯成功,能夠進行下一步,工具目前並無判斷上一步的狀態。
C、一鍵升級 指定配置節點的服務,如圖:
圖2
圖3
圖4
以上三張圖,說明服務已經成功升級,能夠根據自動化測試的配置進行下一步操做了。
D、自動測試,先要在UpdateServiceConfig.xml文件中配置,內容以下:
<!--測試服務配置部分-->
<testserviceconfig key="YBFWebApiServiceController">
<testitem name="LoginCheck0" paramtype="form" type="post" url="http://localhost:3721/hw/demo/HelloWorld/LoginCheck.html" item="status" result="0" remark="自動化測試登陸接口">
<command name="param">
<![CDATA[
USERNAME=yaosy&PASSWORD=123456&vastr=81aef5c9ac742ca56a121390ea5264ec
]]>
</command>
</testitem>
<testitem name="LoginCheck2" paramtype="form" type="post" url="http://localhost:3721/hw/demo/HelloWorld/LoginCheck.html" item="status" result="2" remark="自動化測試登陸接口">
<command name="param">
<![CDATA[
USERNAME=yaosy&PASSWORD=&vastr=81aef5c9ac742ca56a121390ea5264ec
]]>
</command>
</testitem>
</testserviceconfig>
Key 對應服務節點 Name 爲名稱 paramtype 爲類型 form/json type爲提交方式 get/post url爲接口地址 item爲比較結果名稱 result 爲比較結果 command中的內容爲參數部分
成功配置以上節點內容後,能夠點擊【自動測試】,如圖:
圖5
以上是相關的接口,不同的比較結果,獲得兩個狀態。
E、在升級和自動測試不經過後,咱們能夠進行【一鍵回滾】,如圖:
圖6
圖7
到此,服務類的升級已基本完成,站點站點的升級原理和服務升級同樣,只是停用的是站點的應用程序池(由於IIS的版本不少,單獨操做指定站點目前沒有什麼好的辦法,若是有人知道更多好的辦法,也能夠聯繫我,感謝!)
相關工具下載:
字符串加密工具:下載
服務器端Wcf服務:下載
客戶端升級工具:下載