將新主要功能部署到生產時要考慮的5件事情

2021-09-24 08:40:50 字數 1872 閱讀 1554

在較短的時間內完成從開發人員的機器到生產的功能的**,是高效的技術/工程團隊的質量。使用capistrano或fabric等工具進行自動部署使得部署成為一項簡單的任務,而不是可怕的操作,在這種情況下,您錯過了一步,然後搞砸了生產。

這些天docker和kubernetes使部署變得輕而易舉。本文將重點介紹在部署涉及一些重要**和資料庫更改的新主要功能時要考慮的事項。

如何區分常規和主要功能部署?例如,如果您在電子商務**中部署客戶錢包子系統,或者將多租戶功能部署到單個租戶應用程式,則應將其視為正在推出的主要功能。

常規功能不需要事先推出計畫或大量思考,可以通過執行常規部署例程進行部署,也可以。主要特徵是在常規功能和錯誤中的一種子專案。部署重要功能是開發,sys admin / devops和產品團隊的共同責任。

在使用新的主要功能上線/製作之前,始終嚴格按照分段進行測試。進行資料庫備份並通過向後相容性進行小型部署。始終具有回滾計畫並將功能保留在功能標記下。

那麼,當您想要部署團隊已完成開發並希望繼續使用它的新主要功能時,您需要考慮哪些事項?

在進行主要部署之前,您應該製作乙份清單,其中包括大**更改和遷移時的一些資料庫架構更改:

這是乙個明智的選擇,您必須在暫存環境中嚴格測試新功能,並確保涵蓋不同的用例。我甚至建議有乙個**,列出可能的情況並測試它。

如果您有質量保證(qa)部門,您肯定可以就此事採取幫助。

開發人員級別的測試也非常重要,找到乙個關於暫存和修復它的錯誤要比上線並進行回滾要少得多。

您可能需要回滾,因為在生產中發現了重大錯誤。這是你不想遇見的情況。問題是如果它是發布就緒,或者如果測試時間太長,它可能會延遲發布。

在對生產資料庫進行任何更改之前,進行備份是您需要做的最重要的事情。如果你忘了,將是一場災難,雖然這只是一件小事。

當你沒有得到正確的基礎時,問題會變成更大的問題。

因此,請注意並始終在執行這些遷移/更改查詢之前進行資料庫備份。另請注意,部署指令碼不會自動執行遷移。這可能使主要功能部署過程變得痛苦,從而始終為困難情況做好準備。

當您必須將乙個主要功能部署到生產中時,最好在生產中進行所需的資料庫更改,這是完全向後相容的。

您可以在生產資料庫上完成alter table和new columns。這有助於您將主要功能拆分為較小的部分並逐步部署它們。

這為團隊提供了靈活性和信心,可以使用新功能繼續進行生產。如果您可以正確地玩牌,這可以是零停機部署的推動者。

如果您計畫執行乙個主要部署以發布主要功能,請制定推出計畫。它詳細說明了如何使用適當的步驟執行部署,詳細說明了部署策略。

即使您認為推出/部署將會成功,也總會有回滾計畫。

列出您需要回滾到應用程式的當前工作版本所需的內容,以防萬一事情沒有按計畫進行,您需要還原。如果您有可以快速修復的小問題,則無需回滾,但如果存在重大問題,那麼回滾將是唯一的出路。

最後但也很重要的一點是,如果您要部署乙個主要功能,盡早訪問您的公司員工(或公司內部的乙個團隊)是乙個好的選擇。

就像該功能可以由產品團隊在生產中進行測試。

現在的情況?當使用者使用@ yourcompnay.com電子郵件位址登入時,只需限制要執行的功能**即可。一次我記得我們就推出了一種只有在您使用乙個特定電子郵件位址時才會顯示的付款方式。因此,主要功能可以部署到生產中,並且仍然具有過濾訪問許可權。在相關團隊發出綠燈後,您只需刪除訪問該功能的條件,並將其提供給所有客戶/使用者。

至於適用的目標是零停機時間部署,並在流量最低時在生產中執行資料庫遷移指令碼。即使您必須有停機時間,也要確保事先儘量減少停機時間,以便系統可以在最短的時間內進行定期維護。快速部署。

Valgrind的主要功能

valgrind是乙個gpl的軟體,用於linux for x86,amd64 and ppc32 程式的記憶體除錯和 剖析。你可以在它的環境中執行你的程式來監視記憶體的使用情況,比如c 語言中的malloc和free或者 c 中的new和 delete。使用 valgrind的工具包,你可以自動的...

Mongodb主要功能特點

mongodb無模式優點 1 儲存形式,相較於傳統的關係型資料庫,它可以使用乙個表儲存原來需要使用多表關聯才能儲存的資料庫。2 儲存動態性,相較於傳統的資料庫當要增加乙個屬性值的時候要對表大動,mongodb的面向文件的形式可以使其屬性值輕意的增加和刪除。而原來 的關係型資料庫要實現這個需要有很多的...

DBMS的主要功能

概述 這五個功能就像dbms的乙個目錄,因為沒有涉及到很多的細節和實用性的技術,所以目前來講沒有多大的價值,如果在深入到細節之後再總覽,就會更加深入地把握好。這五個功能是怎麼提出來的?第1 5個功能是技術上 第2 3 4個功能是實踐需要,根據現實需要不斷完善的,這是需要積累經驗的。提這個問題有什麼意...