建設(shè)平臺級項目的一些經(jīng)驗與思考

可遷移

在我們開發(fā)平臺項目的時候,如果涉及到不少數(shù)據(jù)與環(huán)境無關(guān),那平臺項目必須具備環(huán)境遷移能力;

  • 數(shù)據(jù)庫腳本遷移(無緩存的可使用,自增id當(dāng)業(yè)務(wù)id的慎用)
  • 頁面上導(dǎo)入導(dǎo)出(需要一定開發(fā)量,需要做導(dǎo)出文檔驗證等邏輯,適合有緩存或者處理邏輯的初始化)
    舉例: 統(tǒng)一權(quán)限平臺,會涉及到很多服務(wù)的資源角色菜單等數(shù)據(jù)需要人工或腳本錄入,如果平臺不支持遷移功能,那這個工作量會非常大,而且人工操作無法保證0風(fēng)險。

可灰度

平臺級項目需要保證高度可用,測試環(huán)境同樣的操作可行,并不代表在生產(chǎn)環(huán)境同樣操作就可以達(dá)到同樣效果,所以平臺必須具備生產(chǎn)灰度的能力,保證同樣環(huán)境下沒有問題才能正式應(yīng)用于生產(chǎn)。

  • 提供灰度測試能力
    舉例: 短信平臺,如果生產(chǎn)環(huán)境沒有預(yù)先灰度測試短信模板,如果在高并發(fā)的項目下直接接入,短時間會造成大量的錯誤,無法發(fā)出或者發(fā)出錯誤的結(jié)果。

可限流降級

平臺級項目要保證可靠,如果有非正常的流量,應(yīng)該具備針對流量入口能做到精準(zhǔn)限流與降級處理

  • 針對接入側(cè)指定控制(比如通過client或租戶做攔截)
    舉例:在saas服務(wù)服務(wù)中,如果有非法租戶非法高頻率調(diào)用接口,那應(yīng)該具備針對該租戶限流拉黑降級的能力,防止影響其他租戶。

可回滾

平臺項目要保證發(fā)版后能兼容舊的接入方,所以必然要保證如果發(fā)版發(fā)生問題可以最快回滾,保證舊版本不受影響。

  • 版本兼容(新增功能表修改、邏輯調(diào)整必須考慮對舊的版本的影響,版本回滾要考慮數(shù)據(jù)修復(fù)很問題)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容