- 1、本文档共33页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实时规则引擎的设计与实现 publicppt课件
实时规则引擎设计与实现
@Neeao
2017年5月26日
目录
需求
方案
实现
挑战
目录
需求
方案
实现
挑战
一大波扫号的出现
一般处理流程:
分析日志
制定防御规则
找相关Domain开发防御规则
防御规则
5分钟内IP登陆超过100次,封IP60分钟
如何实现?
硬编码
if time=5m and count()=100:
block ip 60m
硬编码--成本
每天成功登陆:2W UID
账号有钱的UID:10%
UID平均账号余额:100元
每天存在威胁资金量:
2W*10%*100 = 20W
硬编码--成本
开发上线时间:
1 sprint(开发+测试+上线)=14天
14*20 = 280w
如何解决?
硬编码--改进版
将参数放入配置项,需要时更新配置数据:
db_gap_time=5m
db_times=100
db_block_time=60m
if time=db_gap_time and count()=db_times:
block ip db_block_time
硬编码--改进版
一键秒刷,立即生效
新的问题:
新的规则怎么添加?
继续重复硬编码的思路?
有没有更好的方法?
终极大招
将规则逻辑从应用中分离
应用提交数据至规则逻辑得到结果
规则引擎
规则引擎
定义:
规则引擎由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务规则,并根据业务规则做出业务决策。
应用背景:
提高效率,解决复杂的业务规则
规则经常变化,IT系统根据规则快速、低成本变化
为了快速、低成本的更新,业务人员应能直接管理IT系统中的规则,不需要程序开发人员参与。
规则引擎逻辑
规则引擎调用接口
请求1
请求N
规则引擎核心
数据库
适配层
IN
OUT
IN
OUT
IN
OUT
规则文件
RUN
目录
需求
方案
实现
挑战
功能
业务逻辑与应用分离
方便调用接口
性能与硬编码差别不大
轻量级,方便开发维护
友好的规则编辑界面
现有硬编码规则的集成
为什么不用开源产品
性能原因
队列特性、实时性无法满足
现有Java规则逻辑的很难复用
学习维护成本高
规则逻辑脚本语言
Groovy
优点:
基于JVM(Java虚拟机)
借鉴Python、Ruby和Smalltalk的许多强大的特性,支持DSL,语法简洁
直接调用现有Java的类库,Java无缝集成
方便的实例化接口
性能方面
内存加载
Groovy规则脚本
Java Object
规则管理
规则库
Web管理
(规则版本)
规则引擎
规则流程
目录
需求
方案
实现
挑战
实现
Groovy脚本加载为Java对象
接口参数支持多参数、任意类型
规则脚本执行流程
Sandbox
规则Web管理及测试
规则调用流程
Groovy脚本加载为Java对象
接口参数支持多参数、任意类型
规则脚本执行流程
Groovy--SandBox
默认导入包定义
SecureASTCustomizer
闭包:{}
包导入:import
包定义:package
方法定义:public static void main
方法返回值定义:return Integer/Double/String
运算符定义: PLUS/MINUS/MULTIPLY/ DIVIDE
/Advanced+compiler+configuration
/
规则Web管理及测试
规则Web管理及测试
规则Web管理及测试
规则调用流程
目录
需求
方案
实现
挑战
挑战
应用接入
规则接口数据定义
更友好的规则编辑界面
Q/A
您可能关注的文档
- 大融城开业系列推广活动策划方案ppt课件.ppt
- 大连东晓仓储配送中心营销方案ppt课件.ppt
- 大自然的语言 竺可桢ppt课件.ppt
- 大脑ppt课件.ppt
- 天正课件002ppt课件.ppt
- 天正课件003ppt课件.ppt
- 大黄的研究概况ppt课件.ppt
- 天正课件001ppt课件.ppt
- 天然气简介ppt课件.ppt
- 天正课件004ppt课件.ppt
- 北师大版小学数学三年级上册《寄书》教学设计.docx
- 统编版(部编版)语文二年级上册《雪孩子》教学设计.docx
- 统编版(部编版)语文二年级上册《八角楼上》教学设计.docx
- 北师大版小学数学三年级上册《长方形周长》教学设计.docx
- 北师大版小学数学三年级上册《丰收了》教学设计.docx
- 统编版(部编版)语文二年级上册《夜宿山寺》教学设计.docx
- 统编版(部编版)语文二年级上册《风娃娃》教学设计.docx
- 统编版(部编版)语文二年级上册《朱德的扁担》教学设计.docx
- 统编版(部编版)语文二年级上册《难忘的泼水节》教学设计.docx
- 统编版(部编版)语文二年级上册《纸船和风筝》教学设计.docx
最近下载
- 2025届高考语文专项复习:专题二+文学类文本阅读·小说.pptx VIP
- 2025届高考语文复习:文学类文本阅读之小说+考点1+赏析小说的叙述特征+课件.pptx VIP
- 2025届高考语文复习:文学类文本阅读之小说+课件.pptx VIP
- 《工业设计史 》课件第四章机械化与设计.ppt
- 中华民族共同体概论课件专家版6第六讲 五胡入华与中华民族大交融(魏晋南北朝).pptx VIP
- 2021-2022学年北京市海淀区七年级(上)期中数学试卷.doc VIP
- Unit 4 Do it yourself reading 教学设计2024-2025学年牛津译林版英语八年级上册.docx VIP
- Norman Bethune 诺尔曼·白求恩英文介绍.pptx
- 人教版五年级上册数学全册教案教学设计含教学反思.pdf VIP
- 湖北省武汉市第四十九中学2024-2025学年高一上学期10月月考地理试题 (含答案).pdf VIP
文档评论(0)