Migrated repository
Go to file
2021-03-05 16:18:57 +08:00
radar-admin opts: code opts. 2021-03-05 15:48:47 +08:00
radar-commons opts: change hashcode to md5. 2021-03-05 15:00:15 +08:00
radar-dal feats: rule score add max limit. 2021-03-05 16:18:57 +08:00
radar-dao feats: rule score add max limit. 2021-03-05 16:18:57 +08:00
radar-engine docs: update version number to 1.0.7 2021-01-30 13:27:03 +08:00
radar-kafka-demo docs: update version number to 1.0.7 2021-01-30 13:27:03 +08:00
radar-service opts: code opts. 2021-03-05 15:48:47 +08:00
radar-service-impl opts: code opts. 2021-03-05 15:48:47 +08:00
resources resources: sql and machine learning model 2020-01-11 12:02:05 +08:00
sql feats: rule score add max limit. 2021-03-05 16:18:57 +08:00
.gitignore feats: rule score add max limit. 2021-03-05 16:18:57 +08:00
LICENSE docs: 2021-01-30 12:24:24 +08:00
pom.xml opts: update path. 2021-01-30 13:33:32 +08:00
README_en-us.md docs: add english readme. 2021-03-02 14:19:17 +08:00
README.md Merge branch 'master' into develop 2021-01-30 15:05:51 +08:00

风控引擎Radar

项目介绍

一款基于java语言使用Springboot + Mongodb + Groovy + Es等框架搭建的轻量级实时风控引擎适用于反欺诈应用场景极简的配置真正做到了开箱即用。
通过学习本项目能快速了解风险的定义,进而量化风险 ,最后达到集中管理风险的目的。
A real-time risk analysis engine,which can update risk rule in real-time and make it effective immediately.
It applies to the anti-fraud application perfectly. The project code called Radar, like the code, monitor the transaction at the back.

项目特点

  • 实时风控特殊场景可以做到100ms内响应
  • 可视化规则编辑器,丰富的运算符、计算规则灵活
  • 支持中文,易用性更强
  • 自定义规则引擎,更加灵活,支持复杂多变的场景
  • 插件化的设计,快速接入其它数据能力平台
  • NoSQL易扩展高性能
  • 配置简单,开箱即用!

相关站点

Gitee:  https://gitee.com/freshday/radar  // 码云为镜像网站,贡献代码请提交到 github   
Github: https://github.com/wfh45678/radar  
官网:  https://www.91risk.com  
Wiki:   https://gitee.com/freshday/radar/wikis/home

背景

伴随着移动互联网的高速发展,羊毛党快速崛起,从一平台到另一个平台,所过之处一地鸡毛,这还不是最可怕的, 随之而来的黑产令大部分互联网应用为之胆寒通常新上线的APP的福利比较大风控系统不完善BUG 被发现的频率也比较高, 黑产利用BUG短时间给平台带来了巨大的损失某多多的100元测试优惠券一夜损失上百万W就是一例。 针对这一现象, 拥有一款实时的风控引擎是所有带有金融性质的APP 的当务之急Radar应景而生。
Radar前身是笔者前公司的一个内部研究项目由于众多原因项目商业化失败考虑到项目本身的价值弃之可惜 现使用Springboot进行重构删除了很多本地化功能只保留风控引擎核心更加通用更加轻量二次开发成本低 开源出来,希望能给有风控需求的你们带来一些帮助。

项目初衷

我们知道企业做大后,会有很多产品线,而几乎每一个产品都需要做风险控制,通常我们都是把风险控制的逻辑写在相应的业务功能代码里, 大量重复的风控逻辑代码耦合在我们的业务逻辑里面,随着时间的累积,代码会变得异常复杂,会给后期的维护造成巨大的人力成本和风险。

所以风险的集中化管理势在必行,只有通过一个统一的管理平台,使用规则引擎,采用可视化配置的形式, 平台化管理不同产品的风控策略才是一种更好的方式, 而这正是Radar的初衷。

项目架构

前后端分离架构

后端技术框架: SpringBoot + Mybatis + tkMapper + Mysql + MongoDB + Redis + Groovy + ES + Swagger

前端技术框架: React(SPA)

架构图

系统模块

技术选型

  • 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 管理


使用手册

使用手册里面有大量的图片为了方便国内用户使用故推荐码云的wiki 链接,
https://gitee.com/freshday/radar/wikis/manual

演示入口

通过管理端能够快速了解系统是怎么从风险的定义到风险的量化再到风险的集中管理的整个工作流程。
为了更好的体验,请花一分钟观看 使用手册
Demo URL https://www.91risk.com
建议大家自行注册用户,避免使用同样的测试账号受干扰.

相关文档

WIKI: https://gitee.com/freshday/radar/wikis/home?sort_id=1637444

致谢

感恩 XWF 团队,感谢参入的每一位小伙伴,后续征得同意后会一一列出名字。
千面怪, 烈日下的从容, DerekDingLu, king, sanying2012, 紫泉夜, 玄梦
成书平, 徐帅,郭锐, 王成,马兆永...

赞助商

  • 中和农信项目管理有限公司

感谢赞助商大大们对本项目的认可和支持。

Contact to

如果喜欢本项目Star支持一下, 让更多人了解本项目,谢谢!
独乐乐不如众乐乐微信nicedream7758加群一起嗨
提示进群需要捐赠到gitee

特别说明

前端源码仅对企业级用户开放,需付费购买。
未经授权,禁止使用本项目源码申请软著和专利,保留追究法律责任的权力!
Copyright © 2019-2021 WangFeiHu