使用cmd命令行(.NET Core CLI)來啟動ASP.NET Core 應用程序的多個實例


本章主要和大家分享下如何使用cmd命令行(.NET Core CLI)來啟動ASP.NET Core 應用程序的多個實例,以此來模擬集群。

.NET Core 命令行接口 (CLI) 工具是用於開發、生成、運行和發布 .NET Core 應用程序的跨平台工具鏈。

CLI 命令結構包含驅動程序(“dotnet”)和命令,還可能包含命令參數和選項。

話不多說,下面我們進入本章主題:

首先我們來建個MVC的項目(目標框架:.NET Core 3.1),如下所示:

進入項目文件.csproj所在的目錄

輸入cmd后按Enter鍵就可以快速進入到指定目錄

dotnet run //.NET Core CLI命令 無需任何顯式編譯或啟動命令即可運行源代碼。

這樣子就算是啟動成功了,使用dotnet run命令啟動默認端口號是launchSettings.json中設置的5000

我們使用5000端口在瀏覽器中訪問看下是否真的啟動成功了

可以看到確實是啟動成功了

此時我們可以按Ctrl + C來停止程序,停止成功如下所示:

此時你如果不想使用5000端口,可以使用--urls命令參數來指定具體的端口,例如:

dotnet run --urls=http://*:8080

同樣的操作可以多開幾個命令行窗口,這樣子就可以做到同一套代碼,啟動不同進程,監聽不同端口,以此來模擬集群了,如下所示。

上面我們開了2個cmd界面,分別啟動了一個實例,端口號分別為8080和8081,下面我們就可以使用這2個端口號訪問了

可以發現我們用這2個端口號都訪問成功了

此外還可以運行指定的項目

dotnet run -p NETCoreCLI.csproj //一個“-”是簡稱的p
dotnet run --project NETCoreCLI.csproj //兩個“-”是全稱的project

此處輸入NETCoreCLI.csproj有個小技巧,就是輸入一個N后按Tab鍵就會自動補齊,這樣子就不用一個個字輸入了。

PS:需要特別注意的是上面介紹的啟動方式,一旦修改了程序代碼則都需要使用Ctrl+C停止后重新啟動。

當然有個小技巧就是加watch自動監聽程序代碼的修改,一旦修改了代碼就會自動重啟。

dotnet watch run -p NETCoreCLI.csproj --urls=http://*:8080

此外還有一個命令主要是用來啟動發布后的應用,如下所示:

PS:使用該命令啟動的方式,一旦修改了代碼就需要停止,然后重新生成發布,最后重新啟動。

dotnet [解決方案bin文件下的dll文件] --urls=http://*:8080

dotnet NETCoreCLI.dll --urls=http://*:8080

如果使用該命令直接啟動沒有發布的應用則可能有些資源文件就訪問不到了,如下:

此時雖然可以啟動成功但是有些資源訪問不到,如下所示:

故該命令主要是用來啟動發布后的應用,如下所示:

首先我們將項目發布下,點擊項目 => 右鍵 => 選擇發布

選擇IIS、FTP等

選擇文件系統

然后進行發布

最后使用命令啟動發布后的應用

可以看到啟動成功了

PS:

使用命令行方式啟動程序同樣也是可以支持附加到進程進行調試的。可以嘗試將w3wp.exe或者dotnet.exe又或者是應用程序.exe附加到進程進行調試。

其中應用程序.exe如下所示:

本文涉及到的.NET Core CLI命令小結

dotnet run
dotnet run --urls=http://*:8080  //urls指定ip和端口
dotnet watch run  //watch監聽程序修改,一旦修改則重新啟動
dotnet watch run --urls=http://*:8080
dotnet run -p NETCoreCLI.csproj  //一個“-”是簡稱的p
dotnet run --project NETCoreCLI.csproj  //兩個“-”是全稱的project
dotnet watch run -p NETCoreCLI.csproj --urls=http://*:8080
dotnet [解決方案bin文件下的dll文件] --urls=http://*:8080
dotnet NETCoreCLI.dll --urls=http://*:8080
dotnet clean  //清除項目的默認生成,與VS中的右鍵清理效果是一樣的
Ctrl + C  //停止
cls  //清除屏幕
Tab鍵  //自動補齊

PS:

詳細的.NET Core CLI可參考官網:https://docs.microsoft.com/zh-cn/dotnet/core/tools/dotnet-run

 

此文由博主精心撰寫轉載請保留此原文鏈接https://www.cnblogs.com/xyh9039/p/13155059.html

版權聲明:如有雷同純屬巧合,如有侵權請及時聯系本人修改,謝謝!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM