sparrow-sharded-jedisRedis 的 sharded jedis 客戶端實現(xiàn)
通過對 Redis 客戶端的封裝,從代碼級別強(qiáng)制規(guī)范 key,使 Redis 方便管理和監(jiān)控。
理論上框架可實現(xiàn)跨各種緩存的 db 的緩存層,且安全,友好,調(diào)用簡潔。
功能列表:
進(jìn)一步對客戶端友好封裝,對數(shù)據(jù)類型的轉(zhuǎn)換,封裝進(jìn)框架內(nèi)。
增加 CacheDataNotFound hook,并保留原有異常拋出接口,提供客戶端靈活調(diào)用。
對 key 的 business 部分提供靈活擴(kuò)展接口,為特定業(yè)務(wù)的監(jiān)控提供擴(kuò)展。
接口不只依賴 redis,理論上可以對 redis 的不同接口進(jìn)行實現(xiàn),包括 jedis sharded jedis jedisson 以及其他異構(gòu)緩存系統(tǒng)。
將接口按類型進(jìn)行拆分,避免類過于寵大,不利于維護(hù)。
提供 monitor 接口的 befare 和 montor 方法,客戶端可根據(jù)需要進(jìn)行擴(kuò)展,如果需要對 redis 限流,可實現(xiàn) before 接口,如果不需要則直接返回 true。
提供限流工具類。AbstractLock 客戶端可以根本需要進(jìn)行實現(xiàn)。
將 redis 客戶端從 sparrow 分拆出來,單獨部署,單獨維護(hù),單獨版本控制。
實現(xiàn)類圖如下
評論
圖片
表情
