规则引擎框架集成了多款第三方开源规则引擎产品的、封装了规则计算常用接口的,具有灵活扩展性、可靠性、高可用的规则引擎框架。配合前端规则定义的UI,可以灵活实现各种复杂逻辑的规则计算。
- 扩展性
引擎产品可扩展,可集成多种第三方规则引擎产品,来使用各个引擎的不同特性,适应复杂的应用场景。目前已集成jexl和groovy。
规则脚本适配器可扩展,由于第三方规则引擎的脚本语言不一致,需要扩展不用引擎所需的规则脚本适配器。规则脚本在前端页面一次定义,会被存储成结构化的脚本(json格式,基于二叉树),再根据当前使用的引擎不同,引擎调度器会调用相应的规则脚本适配器,将结构化规则脚本转化为具体第三方引擎可执行的脚本语言。
数据适配器可扩展,同规则脚本适配器,不同引擎接收数据的格式和方式不一致,需要自己扩展。 - 高可用性
框架内封装了同步和异步引擎接口;
支持单个和批量任务的执行;
异步调用支持回调方式,并由内置线程池来多线程并发执行;
内部规则执行器对同一脚本会自动缓存,不会重复创建消耗资源和性能,提高执行效率。 - 可靠性
规则引擎框架设计依据开源J2EE框架成熟的设计模式,采用典型的控制器+适配器模式来驱动,内置可调参数线程池,内置缓存,支持同步异步和批量执行。框架各模块职责分明,具有可追溯、可灵活调整的特性。
标签:
设计方案
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?