回退窗口需求
- 編輯:admin -不同業(yè)務(wù)的回退需求有很大不同。要確定如何建立你自己特定的回退需求,那么至少從擴展的角度應(yīng)該問的問題是,何時你才能得到足夠的性能信息以確定你是否需要撤銷近來的變更。許多公同的最低條件是保證每周工作日的峰值用量在分析結(jié)果中沒有異常。對于修改現(xiàn)有的功能來說,這個最低條件已經(jīng)足夠了,但當要添加新功能時,這個條件可能就不夠了。
不同業(yè)務(wù)的回退需求有很大不同。要確定如何建立你自己特定的回退需求,那么至少從擴展的角度應(yīng)該問的問題是,何時你才能得到足夠的性能信息以確定你是否需要撤銷近來的變更。許多公同的最低條件是保證每周工作日的峰值用量在分析結(jié)果中沒有異常。對于修改現(xiàn)有的功能來說,這個最低條件已經(jīng)足夠了,但當要添加新功能時,這個條件可能就不夠了。新功能通常都有一個采用曲線,對于該功能,要獲得足夠的流量以確定它對系統(tǒng)性能的影響,天的時間是不夠的。 對于任何 新功能,一段時間內(nèi)收集的數(shù)據(jù)量也可能對性能產(chǎn)生 負面影響,從而影響你的可擴展性。

讓我們再來看看AllScale公司的約翰尼,菲克斯和HRM應(yīng)用。約翰尼的團隊在忙于給HRM系統(tǒng)的簡歷跟蹤部分實現(xiàn)一個“分隔度”的功能。這個功能的思路是讓系統(tǒng)找出公司內(nèi)的一-些員工,這些員工是與候選人認識的,或者是認識與候選人相熟的人,這樣就可以通過個人關(guān)系了解候選人的背景。這個功能的輸人是當前員工曾經(jīng)工作過的所有公司以及候選人曾經(jīng)工作過的公司列表。約翰尼的團隊最初認為采用線性檢索就可以了,因為可選的公司列表以及得到的重合的公司列表可能都不大。
新功能被發(fā)布后,在接下來的幾周中,開始計算關(guān)系映射表。開始時,一切正常,約翰尼的團隊對應(yīng)用的結(jié)果和運行時間都很滿意。但隨著候選人列表增大,候選人曾經(jīng)工作過的公同的列表也隨之增大。此外,隨者AllSeale公司發(fā)展,它的員工數(shù)量也增加了,于是關(guān)系樹也隨著打大。很快,許多依賴于分隔度功他的進程開始運行超時,客戶逐漸變得憤怒了。
于是開始進人危機管理流程,約翰尼的團隊迅速發(fā)現(xiàn)了罪魁禍首是分隔度功能。約翰尼和整個團隊一起工作,認為這個團隊可以在一天內(nèi)修改這個功能,采用更有效的檢索算法,然后測試它,在30個小時之內(nèi)把修改過的版本發(fā)布到姑點上。而CEO克里斯蒂娜關(guān)心的是如果不在幾個小時內(nèi)修復(fù)這個問題,會造成重大的客戶流失。
如果約翰尼果納了我們)的建議,確保可以回退到上個發(fā)布的版本,那么只是回退代碼,然后當問題修就后再發(fā)布它就可以了,這里很設(shè)他的回退流程允許他回退E天前發(fā)布的代碼。雖然這樣可能會給用戶造成些困惑,但提示相應(yīng)的消息就有助于控制混亂,而且約榆尼可以在兩天內(nèi)發(fā)布新的代碼,使這個功能正常運行,無損于當前的可擴展性。如果約愉尼不采用我們的建議,或者約輸尼的回退流程只允許在發(fā)布之后的六個小時內(nèi)進行回退,那么我們猜約翰尼的觀念一定會有所轉(zhuǎn)變,轉(zhuǎn)為要確保一直具備能夠滿足他需求的回退流程了。
對于回退窗口的大小,最后個要 考慮的因索是你發(fā)布的頻率以及你需要能夠回退多少個發(fā)布的版本。也許你的發(fā)布流程允許你-周之內(nèi)在站點上,發(fā)布多個新功能。對于這種情況,如果任何新功他的采用率都要延伸到下一個發(fā)布周期才能穩(wěn)定,那么你可能就需要一次回退多個發(fā)布的版本了。如果是這種情況,那么你的流程需要更加嚴謹一此,因為你要考慮的不是只有一個發(fā)布的版本,而是多個變更和多次發(fā)布。
回退窗口需求備忘錄要確定執(zhí)行回退必需的時間安排,應(yīng)該考慮以下幾點:
●你發(fā)布一個版本后,距離產(chǎn)品的第一個流量高峰期有多長時間?O是修改現(xiàn)有的功能還是發(fā)布新功能?
●如果是個新功能,它的采用曲線是怎樣的?
●根據(jù)發(fā)布頻率,我應(yīng)該考慮網(wǎng)站建設(shè)回退多少次發(fā)布?我們稱這為關(guān)于回退版本個數(shù)的需求。你的回退窗口應(yīng)該允許你在新功能被大量采用(如采用率大于50%)后以及第一次使用高峰期之后或之中,還能夠回退。
