伴随着移动互联网的高速发展,羊毛党快速崛起,从一平台到另一个平台,所过之处一地鸡毛,这还不是最可怕的, 随之而来的黑产令大部分互联网应用为之胆寒,通常新上线的APP的福利比较大,风控系统不完善,BUG 被发现的频率也比较高, 黑产利用BUG短时间给平台带来了巨大的损失,某多多的(100元测试优惠券,一夜损失上百万W)就是一例。针对这一现象, 拥有一款实时的风控引擎是所有带有金融性质的APP 的当务之急,Radar应景而生。
Radar前身是笔者前公司的一个内部研究项目,由于众多原因项目商业化失败,考虑到项目本身的价值,弃之可惜, 现使用Springboot进行重构,删除了很多本地化功能,只保留风控引擎核心,更加通用,更加轻量,二次开发成本低, 开源出来,希望能给有风控需求的你们带来一些帮助。
项目特点
实时风控,特殊场景可以做到100ms内响应
可视化规则编辑器,丰富的运算符、计算规则灵活
支持中文,易用性更强
自定义规则引擎,更加灵活,支持复杂多变的场景
插件化的设计,快速接入其它数据能力平台
NoSQL,易扩展,高性能
配置简单,开箱即用!
技术选型
Springboot:笔者是java 出生, 选择 Springboot 理所当然,方便自己, 也方便其他Java使用者进行扩展。
Mybatis + tkMapper:持久层框架, tkMapper 提供mapper 通用模板功能,减少重复代码的生成。
Mysql :本项目中关系数据库,主要用于存放 风险模型的元信息。
MongoDB:用于存放事件JSON, 提供基本统计学计算(例如:max, min, sum, avg,), 复杂的统计学概念(sd,variance, etc…)在内存中计算。
ES:提供数据查询和规则命中报表服务。
Redis:提供缓存支持,Engine 利用发布订阅特性监听管理端相关配置的更新
Groovy:规则引擎,风控规则最后都生成 groovy 脚本, 实时编辑,动态生成,即时生效。
Swagger: Rest API 管理
架构图
![系统模块](https://i-blog.csdnimg.cn/blog_migrate/5d65a47bb26e0feb278f2572dce3c216.png)
项目地址,回复“开源011”获取
推荐阅读:
不是你需要中台,而是一名合格的架构师(附各大厂中台建设PPT)