社区
Java SE
帖子详情
Drools规则引擎动态加载规则,不重新编译整个规则库
峰峰517
2017-10-05 08:31:28
在网上看到的Drools规则动态加载,在规则需要更新或添加的时候,都需要重新构建KBase,也就是需要对原有的规则文件重新编译,这样做是不是对加载速度有影响。然后我也看到了KnowledgeAgent的相关用法,但在Drools6.5下,直接就报了个unsupportedOperationException的错误。请问大家是怎么解决这个问题的?
...全文
713
2
打赏
收藏
Drools规则引擎动态加载规则,不重新编译整个规则库
在网上看到的Drools规则动态加载,在规则需要更新或添加的时候,都需要重新构建KBase,也就是需要对原有的规则文件重新编译,这样做是不是对加载速度有影响。然后我也看到了KnowledgeAgent的相关用法,但在Drools6.5下,直接就报了个unsupportedOperationException的错误。请问大家是怎么解决这个问题的?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
科比请留步
2017-10-06
打赏
举报
回复
可以根据配置动态加载规则,规则其实就是个字符串,可以使用缓存,不会影响速率的
科比请留步
2017-10-06
打赏
举报
回复
用KnowledgeBuilderFactory这个类去构建
Drools
规则
引擎
原理
从“频繁且通用”的业务变化中抽象出来的中间服务层,实现了将决策逻辑从应用代码中分离出来,并使用预定义的高级语法或者可视化的工具编写业务
规则
并自动优化执行。
规则
引擎
具体执行可以分为接受数据输入,高效解释业务
规则
,根据业务
规则
输出决策结果几个过程。
Drools
规则
引擎
是一种基于
规则
的方法,用于在
Drools
软件中实现专家系统。
规则
引擎
提供了专家系统,这是一种基于知识的系统,可以帮助你做出决策,比如做什么和怎么做。它将知识收集到一个知识
库
中,可以用于推理。
drools
规则
引擎
耗费内存问题解决
背景 公司使用
drools
规则
引擎
过程中,一个
规则
文件中差不多10个rule,每一次访问都需要耗费800M内存,导致频繁GC,同时classloader实例数每构建一次都会增加,导致nonHeap区内存占用量跟着递增,导致比较频繁的fullGC(此时老年代使用率还不到10%)。当并发量稍微大一点服务就会挂掉。 原因
规则
文件加入
drools
的时候需要解析
编译
,每访问一次接口都导致
规则
解析
编译
一次,经过监控测试发现800M内存和classloader递增问题就是在解析过程中产生的 解决思路 解决问题的本质是缓
Drools
规则
引擎
介绍及实践
1.
规则
引擎
规则
引擎
是由推理引擎发展而来,是一种嵌入在应用程序中的组件,实现了将业务决策从应用程序代码中分离出来,并使用预定义的语义模块编写业务决策。接受数据输入,解释业务
规则
,并根据业务
规则
做出业务决策。开源的代表是
Drools
,商业的代表是Visual Rules ,I Log 复杂企业级项目运营及维护过程中随外部条件不断变化的业务
规则
(business logic), 迫切需要分离商业决策者的商业决策逻辑和应用开发者的技术决策, 并把这些商业决策放在中心数据
库
或其他统一的地方,让它们能独立运行;
Drools
动态
更新
规则
Drools
动态
规则
加载
Drools
简介
动态
加载
规则
1. 项目依赖2. 实现(1) 新增
规则
(2) 删除
规则
(3) 更新
规则
Drools
简介 简单说明一下
规则
动态
插拔使用到的
Drools
相关类。 类名 使用说明 KnowledgeBuilder 在业务代码中收集已编写的
规则
,并对
规则
文件进行
编译
,生成
编译
好的KnowledgePackage 集合,提供给其他API使用。通过其提供的hasErrors()方法获得
编译
过程中是否有错,getErrors()方法打印错误信息。支持drl文件、
详解:
Drools
规则
引擎
探究以及在IOT的应用
前言:我上家公司是做物联网的,任职在IOT部门,业务上针对不同类型的燃气表,水表,报警器等有不同协议,其中又包含不同厂家的表和自己公司的表。针对不同的协议,如何解析不同的协议头帧,根据头帧进行不同的复杂业务处理,后来引入了
Drools
规则
引擎
,通过
规则
的逻辑和数据的分离以及可扩展解决问题。 目前所处为淘系技术部负责天猫奢品的业务,业务背景如下:业务包含天猫奢品频道,奢品折扣频道,天猫奢品官方直营旗舰店,魅力惠旗舰店,魅力惠APP等。基于业务场景下会员分为店铺会员,APP会员,天猫奢品行业会员等,而业务..
Java SE
62,612
社区成员
307,332
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章