儲(chǔ)升級(jí)到 v2 網(wǎng)關(guān)架構(gòu):Laravel feature-flags 完整升級(jí)指南與最佳實(shí)踐)
如何從 v1 倉(cāng)儲(chǔ)升級(jí)到 v2 網(wǎng)關(guān)架構(gòu)Laravel feature-flags 完整升級(jí)指南與最佳實(shí)踐【免費(fèi)下載鏈接】feature-flagsA Laravel package for handling feature flags項(xiàng)目地址: https://gitcode.com/gh_mirrors/fe/feature-flags本指南面向使用feature-flagsLaravel 功能開(kāi)關(guān)包的開(kāi)發(fā)者講解如何從 v1 的倉(cāng)儲(chǔ)Repository架構(gòu)升級(jí)到 v2 的網(wǎng)關(guān)Gateway 流水線Pipeline架構(gòu)。升級(jí)后你只需修改配置文件與自定義驅(qū)動(dòng)業(yè)務(wù)代碼中已有的Features::accessible(my-feature)調(diào)用完全不用動(dòng)數(shù)據(jù)庫(kù)表結(jié)構(gòu)也保持不變。一、為什么 v2 要用網(wǎng)關(guān)架構(gòu)取代倉(cāng)儲(chǔ)v1 誕生于 2019 年采用倉(cāng)儲(chǔ)模式整個(gè)應(yīng)用只有一個(gè)Repository接口實(shí)現(xiàn)若想要數(shù)據(jù)庫(kù)查不到就回退到 Redis的鏈路式回退必須依賴 Chain 倉(cāng)儲(chǔ)或自己寫(xiě)緩存邏輯擴(kuò)展性差。v2 的核心哲學(xué)拋棄倉(cāng)儲(chǔ)改用網(wǎng)關(guān)。每個(gè)網(wǎng)關(guān)是判定功能開(kāi)關(guān)狀態(tài)時(shí)的一次停靠站網(wǎng)關(guān)背后可以掛不同的驅(qū)動(dòng)數(shù)據(jù)庫(kù)、Redis、內(nèi)存、權(quán)限 Gate 等同一個(gè)驅(qū)動(dòng)還能以不同配置創(chuàng)建多個(gè)網(wǎng)關(guān)例如一個(gè)查本地 SQLite 表另一個(gè)查 MySQL 庫(kù)。 整個(gè)包本身就像一個(gè)流水線配置中的pipeline選項(xiàng)按順序聲明網(wǎng)關(guān)前一個(gè)網(wǎng)關(guān)沒(méi)查到結(jié)果請(qǐng)求自動(dòng)流向下一個(gè)。v1 與 v2 架構(gòu)對(duì)比一覽對(duì)比項(xiàng)v1舊v2新核心抽象Repository【免費(fèi)下載鏈接】feature-flagsA Laravel package for handling feature flags項(xiàng)目地址: https://gitcode.com/gh_mirrors/fe/feature-flags創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考