源码:https://github.com/sidihuo/abtest-sdk
ABTest-SDK适用于AB分流实验、灰度发布系统等互联网场景;
此SDK支持二次开发,开发者可自行实现查询实验分流配置接口。
特性:
1)支持白名单;
2)轻量级,仅依赖guava;
3)接口耗时微秒级,使用guava的本地缓存;
4)客户分流可控(修改分流比时候客户版本可控,单个实验的分流比例粒度为5%);
https://github.com/sidihuo/abtest-sdk/tree/release001_20181014
此版使用了guava本地缓存,不需要缓存所有数据库的配置,但是接口有可能被攻击,穿透到数据库;
下一个版本将取消guava本地缓存,自定义本地缓存,对外接口与DB完全隔离,缺点是要缓存所有的数据库配置;