特性开关框架选型之FF4J vs Togglz
生活随笔
收集整理的這篇文章主要介紹了
特性开关框架选型之FF4J vs Togglz
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
目前發(fā)現(xiàn)兩個主要的開源的Java特性開關(guān)框架,togglz 和 ff4j。但是兩個框架都優(yōu)秀,都能達(dá)到開關(guān)切換等主要目的。選哪個?
togglz vs ff4j
| 特性開關(guān) | Togglz的開關(guān)需要定義在枚舉中,ff4j不需要,通過一個字符串名就可以了 | ||
| 特性分組 | togglz的分組是中看不中用,只是顯示上的分組,而ff4j的分組可以以組的粒度進(jìn)行開關(guān) | ||
| Admin Console | togglz的管理后臺很簡陋,只有對特性的簡單管理。ff4j的后臺漂亮的多,功能也強(qiáng)大的多 | ||
| AOP-Driven | 不支持 | 這個功能還挺有用,一些場景下可以用它來代替if…else … | |
| 開關(guān)策略 | 兩者都可以輕松的擴(kuò)展自己的策略,就默認(rèn)策略而言,togglz提供的ScriptEngineActivationStrategy,這個很強(qiáng)大,可以通過配置ECMAScript來決定開關(guān),因此togglz略勝一籌 | ||
| 特性監(jiān)控 | 不支持 | ? | |
| 操作審計 | 不支持 | 安全角度考慮,審計功能還是很有用的 | |
| REST API | 不支持 | 我們有讓前端獲取開關(guān)狀態(tài)的應(yīng)用場景,這是一個實用的功能 | |
| Spring Boot Starter | ? | ||
| 狀態(tài)緩存 | CachingStateRepository | togglz沒得選,ff4j隨便選 | |
| 狀態(tài)存儲 | InMemoryStateRepository、FileBasedStateRepository、JDBCStateRepository、MongoStateRepository | ff4j支持的數(shù)據(jù)庫多 | |
| 測試支持 | ? | ||
| 資料 | 少,https://www.togglz.org/ | 少,但相對而言官網(wǎng)的文檔寫的非常不錯?http://www.ff4j.org/ | ? |
經(jīng)比較選用ff4
ff4j 功能更強(qiáng)大,比如togglz沒有的 REST API、AOP-Drive、特性監(jiān)控、特性審計等;我們需要的一些功能ff4j有而togglz沒有,比如 REST API、操作審計。
總結(jié)
以上是生活随笔為你收集整理的特性开关框架选型之FF4J vs Togglz的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VMware Workstation P
- 下一篇: Apple移动设备处理器指令集 armv