前言
以往部署程式一直是習慣性先安裝執行時環境,然後再將釋出打包好的程式執行起來;但當多個程式依賴不同版本框架平臺時,如果部署在同一臺機器上,那就需要在同一臺機器上安裝多個版本的執行時,總感覺有點不太方便,所以今天就來說說.NET部署的兩種模式
正文
其實在釋出程式時有兩種模式可以選擇,框架依賴模式和獨立模式;
- 框架依賴模式:程式在釋出打包時,只針對程式本身進行打包,如果打包好的程式要在其他機器上正常執行,首先要在對應的機器上安裝對應版本框架的執行時,否則程式是不能執行的;
- 獨立模式:程式在釋出打包時,程式和依賴的框架一起打包了,只需要將打包好的檔案放到對應的機器上直接執行即可,不需要安裝框架執行時。
案例演示
演示前提
新建一個MVC專案,預設生成的專案就行,主要是有頁面,演示方便(用其他形式同理,如API或控制檯等都一樣);
實操演示
右鍵專案->點選發布->彈框選擇釋出方式,這裡建議選擇用資料夾的形式,確定無誤之後再上傳到伺服器比較保險。
點選下一步選擇對應的釋出資料夾,後續釋出生成的檔案就到此資料夾下啦。
指定好路徑之後,點選右下角的完成,進入如下介面;
通常會直接點選發布按鈕將程式釋出,其實這個時候預設是以框架依賴的模式進行釋出的,可以點選顯示所有設定進行配置,如下:
這裡先以框架依賴的方式釋出一版,放到一個沒有環境的機器上試試。這裡是通過Xftp工具將釋出檔案傳到Linux中,執行之前,需要將專案的啟動檔案賦予執行許可權,否則不能執行,如下:
看看,果然執行不起來,必須先安裝對應版本的執行時才行。
現在再切換為獨立模式釋出一版,這裡需要注意一點,當選擇獨立模式時,一定要選擇目標執行時,根據執行的機器進行選擇即可,這裡我要放在Linux上,所以選擇Linux x64(下拉選項中Windows、Linux、Mac都可以選擇,根據機器選擇合適的環境釋出就行)。
釋出打包完成之後,同樣傳到Linux環境中,執行如下:
可以看到,獨立部署的形式是可以正常執行的。
兩種模式的優缺點
-
框架依賴模式
優點:釋出檔案小;
缺點:當同一臺機器需要執行多個程式時,如果依賴的框架不同,就得重複安裝;
-
獨立模式
優點:部署方便,同一臺機器上不同依賴的程式互相不影響,不需要安裝對應版本的執行時;
缺點:釋出的檔案很大,包含了依賴框架的相關庫檔案;
這裡就簡單演示了Linux環境的操作,其他環境小夥伴們自己試試吧;程式碼就不上傳了,就是簡單建個專案演示,沒有做任何更改。
總結
兩種模式可以針對自己的需要進行部署,如果是同一臺機器需要執行很多程式,又沒有做類似於容器這種隔離的情況下,獨立模式感覺還不錯哦,依賴框架互不影響,可能會避免一些麻煩事。
關注“Code綜藝圈”,和我一起學習吧;我回來啦~~~