Asp.net
什麼是 ASP.NET 應用程序部署的最佳實踐
沒有過多地進入 ASP.NET 世界,我仍然面臨著處理 ASP.NET 項目的必要性,該項目需要定期將新版本部署到生產 IIS 伺服器。
普遍接受的 ASP.NET 應用程序部署最佳實踐是什麼?
環境:Windows Server 2003、IIS6、MySQL5、ASP.NET 2.0 應用程序。
嘗試在使用者很少(如果有的話)線上時執行生產部署,例如在晚上或週末。通知使用者將有計劃的中斷。
部署到生產環境時,可以創建一個“ App_Offline.htm ”文件,放在ASP.NET網站的根目錄下。ASP.NET 辨識此文件具有特殊含義 - 所有動態頁面請求都顯示在此頁面而不是使用者請求的頁面。通常,此頁面會顯示友好消息,例如“伺服器因例行維護而關閉。請在 30 分鐘後重試。”
使部署不那麼痛苦的另一個技巧是讓您的 web.config 在各種環境(例如開發、測試和生產)之間盡可能地相似。對於在不同環境下真正需要改變的東西,例如連接字元串,您可以通過在 web.config 中進行設置,將它們提取到自己的 connectionStrings.config 文件中。
對於數據庫部署,有一些很棒的第三方工具(例如Teratrax Database Compare for SQL Server)允許您比較 2 個數據庫之間的架構和/或數據,並生成一個 SQL 腳本,將目標數據庫遷移到另一個數據庫。這是否適合您將取決於您的確切開發實踐。如果您不能使用此類工具,您可以編寫每個數據庫更改的腳本,然後在部署到不同的環境時重播這些腳本。
當然,理想情況下,您應該擁有一個與生產完全相同的測試環境,並且可以進行所有的驗收測試,並確保您的發布是穩定的,並且您的部署能夠在您真正開始之前工作。