簡體   English   中英

如何在不停止應用程序的情況下發布asp.net core app Dlls

[英]How to publish asp.net core app Dlls without having to stop the application

當我嘗試通過 filezilla 工具使用 ftp 發布 .net 核心應用程序 Dll 時,它顯示一條錯誤消息,表明該文件正在被另一個進程使用。

上面的消息顯示是可以理解的,因為該文件被 dotnet.exe 使用,這是一個單獨的進程。

為了克服這個問題,我每次都必須停止 iis 中的應用程序,然后上傳 dll,然后重新啟動它。 由於經歷了非常短的停機時間,asp.net 身份會話過期,並且每次需要上傳時都需要向服務器發送 rdp。

與我們可以直接發布文件而無需 RPD 或執行一些手動操作的 asp.net mvc 相比,這也不是流暢的體驗。

任何解決上述問題的解決方法或解決方案將不勝感激。

好吧,如果您在負載均衡器后面有兩台服務器,您可以這樣做(簡化):

  1. 從 LB 中刪除服務器 1
  2. 停止服務器 1 上的應用程序
  3. 更新服務器 1
  4. 將服務器 1 添加回 LB
  5. 對服務器 2 重復 1-4

這稱為滾動升級。

得到了解決方案。

它可以通過app_offline.html文件完成。

您必須將 app_offline.html 文件移動到應用程序根文件夾才能停止/使應用程序脫機。

然后您可以推送您的更改並從應用程序根文件夾中刪除 app_offline.html 文件。

注意:您可以在 app_offline.html 文件中放置一些信息性消息,這些消息將向用戶顯示維護正在進行中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM