实战Drools规则引擎

实战Drools规则引擎
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2023-02
版次: 1
ISBN: 9787111717362
定价: 99.00
装帧: 软精装
开本: 16开
纸张: 胶版纸
页数: 336页
字数: 455千字
5人买过
  • 这是一部由浅入深、从理论到实践、以实战方式讲解开源规则引擎Drools的原理、模型、使用方式、适用场景和案例实现的著作,得到了国内外众多知名企业专家的一致好评。
      本书的作者都就职于红帽软件,长期深耕开源中间件技术,具有深厚的产品知识及项目经验,曾多次参与企业的IT系统建设和业务规则实现,为业务规则系统的建设者和使用者答疑解惑。本书正是对作者多年实战经验的总结,对国内外企业的规则系统建设具有很高的参考价值。
      全书共14章,按照难易程度,可分为初级、中级和高级三个层次。
      初级(第1~4章)
      首先,总体介绍Drools的构成、多种使用方式、核心概念;其次,以Hello Drools为例让读者切身体验*简单规则的编写过程,通过对示例工程的解读,让读者理解Drools规则语言的基本语法与模式匹配;再次,对Drools规则语言的方方面面进行详细讲解;*后,深入讲解Drools规则引擎的核心概念。
      中级(第5~11章)
      通过详尽的步骤分别讲解Drools基于主机、容器和云模式的环境搭建,介绍如何基于已搭建的环境进行规则的开发、测试与发布,并通过实战让读者掌握多种规则编写方式:向导式规则、规则模板、领域专用语言、规则表、规则流。
      高级(第12~14章)
      有针对性地讲解Drools在流模式下的复杂事件处理原理、基于决策模型和表示法的规则编写及Drools对机器学习的支持和使用,以帮助读者拓宽思路,将Drools应用到更广阔的领域。 关泽发

    红帽软件(北京)有限公司资深解决方案架构师,拥有20余年IT从业经验,目前专注于云原生微服务系统架构设计与开发。曾就职于AWS应用现代化团队、红帽服务交付团队、投资银行开发团队,熟悉公有云和私有云生态,擅长企业业务系统的设计、开发与交付。通过微信公众号“撞墙秀”分享了许多项目实践经验与心得。

    陈楚晖

    红帽软件(北京)有限公司首席架构师、开源技术专家,专注于云计算、容器技术、开源中间件、规则引擎的推广。曾就职于甲骨文中间件团队、银行业务开发团队,拥有20余年中间件及应用开发经验,以及丰富的金融企业、政府机构、电信运营商等的应用上云、DevOps、PaaS、系统集成及IT项目管理经验,熟悉开源软件的软件开发、架构设计、系统运维等。 目  录 Contents

    赞 誉

    前 言

    第1章 Drools概述  1

    1.1 什么是规则引擎  1

    1.2 Drools是什么  2

    1.3 Drools的组件  2

    1.4 Drools的使用方式  3

    1.4.1  嵌入式  3

    1.4.2 远程调用模式  4

    1.4.3 云提供模式  4

    1.5 Drools的核心概念  5

    1.5.1 规则语言  5

    1.5.2 事实对象  6

    1.5.3 决策引擎  7

    1.6 社区的Drools与企业级的

    Decision Manager  7

    1.7 本章小结  8

    第2章 Drools初体验  9

    2.1 环境准备  9

    2.2 hello drools  9

    2.3 规则语法解读  11

    2.4 Drools的模式匹配  11

    2.5 规则工程解读  13

    2.6 本章小结  15

    第3章 Drools规则语言  16

    3.1 语法说明  17

    3.1.1 包定义  17

    3.1.2 依赖导入  17

    3.1.3 函数  18

    3.1.4 查询  18

    3.1.5 类型声明  19

    3.1.6 全局变量  21

    3.1.7 规则属性  21

    3.1.8 规则的条件  22

    3.1.9 规则的动作  25

    3.1.10 注释  29

    3.1.11 错误提示  30

    3.2 实战:斐波那契数列  32

    3.2.1 功能说明  32

    3.2.2 规则实现  32

    3.2.3 工程解读  33

    3.2.4 规则解读  35

    3.3 本章小结  36

    第4章 Drools决策引擎  37

    4.1 会话  37

    4.1.1 无状态会话  38

    4.1.2 有状态会话  39

    4.1.3 会话池  41

    4.2 推理与真理   42

    4.3 规则执行控制  43

    4.3.1 优先级  44

    4.3.2 议程组  45

    4.3.3 激活组  46

    4.3.4 运行模式  46

    4.3.5 事实传播模式  47

    4.3.6 议程评估过滤??器  48

    4.3.7 规则单元  48

    4.4 Phreak算法  51

    4.4.1 延迟评估  51

    4.4.2 面向集合的传播  52

    4.4.3 网络分段  52

    4.5 查询事实数据  53

    4.6 事件侦听器和日志  54

    4.6.1 事件侦听器  54

    4.6.2 日志  55

    4.7 性能调优项  55

    4.8 实战:费用分摊  57

    4.8.1 功能说明  57

    4.8.2 规则实现  58

    4.8.3 工程解读  59

    4.8.4 规则解读  61

    4.9 本章小结  65

    第5章 远程调用模式  66

    5.1 基于主机的Drools环境搭建  66

    5.1.1 获取介质  66

    5.1.2 安装  69

    5.2 基于容器的Drools环境搭建  74

    5.2.1 环境准备  74

    5.2.2 安装  75

    5.3 实战:将军排队  79

    5.3.1 功能说明  79

    5.3.2 规则实现  79

    5.3.3 工程解读  84

    5.3.4 规则解读  86

    5.4 本章小结  88

    第6章 云提供模式  89

    6.1 环境准备  89

    6.1.1 获取介质  89

    6.1.2 安装OpenShift Local  90

    6.1.3 安装Business Automation Operator  95

    6.1.4 安装业务中心与决策

    服务器  97

    6.1.5 验证安装  99

    6.2 实战:东西在里面吗  101

    6.2.1 功能说明  101

    6.2.2 规则实现  101

    6.2.3 验证规则  110

    6.3 本章小结  113

    第7章 规则的测试  114

    7.1 测试场景设计器  114

    7.1.1 全局参数配置  115

    7.1.2 数据对象别名  115

    7.1.3 表达式语法  115

    7.2 “东西在里面吗”实战的测试  116

    7.2.1 创建测试场景  116

    7.2.2 定义测试场景数据结构  117

    7.2.3 添加用例数据并测试  122

    7.3 “将军排队”实战的测试  125

    7.3.1 创建测试场景与用例  125

    7.3.2 编写背景数据并测试  126

    7.4 本章小结  128

    第8章 向导式规则  129

    8.1 向导式规则设计器  129

    8.1.1 数据对象  129

    8.1.2 设计规则  130

    8.2 实战:商品促销  131

    8.2.1 功能说明  131

    8.2.2 规则实现  131

    8.2.3 验证规则  148

    8.3 本章小结  155

    第9章 向导式规则模板与领域

    专用语言  156

    9.1 向导式规则模板  156

    9.1.1 创建规则模板   156

    9.1.2 定义数据表  157

    9.2 领域专用语言  158

    9.3 实战:积分换礼品  159

    9.3.1 功能说明  159

    9.3.2 规则实现  160

    9.3.3 验证规则  167

    9.3.4 DSL规则实现  168

    9.3.5 验证DSL规则  171

    9.4 本章小结  171

    第10章 规则表  172

    10.1 向导式规则表  172

    10.1.1 创建向导式规则表  172

    10.1.2 导入数据对象类型  174

    10.1.3 添加模式匹配事实  175

    10.1.4 添加约束  176

    10.1.5 添加更新动作  176

    10.1.6 添加插入动作  177

    10.1.7 选择展开列  178

    10.1.8 添加规则表数据  179

    10.2 电子表格规则表  179

    10.3 实战:电脑推荐  181

    10.3.1 功能说明  181

    10.3.2 规则实现  181

    10.3.3 验证规则  193

    10.3.4 转换为电子表格规则表  194

    10.4 本章小结  198

    第11章 规则流  199

    11.1 什么是规则流  199

    11.2 Drools中的规则流  199

    11.3 实战:贷款申请  202

    11.3.1 功能说明  202

    11.3.2 规则流实现  203

    11.3.3 验证规则流  240

    11.4 本章小结  245

    第12章 复杂事件处理  246

    12.1 复杂事件处理中的事件  246

    12.2 将事实数据定义为事件  247

    12.3 事件相关的元数据注解  247

    12.4 事件处理模式  249

    12.4.1 云模式  249

    12.4.2 流模式  250

    12.4.3 反向匹配  250

    12.5 事实属性更改的评估策略与

    侦听  251

    12.6 事件的时间运算符  253

    12.6.1 before和after  254

    12.6.2 coincides  254

    12.6.3 during和includes  255

    12.6.4 finishes和finished by  256

    12.6.5 meets和met by  256

    12.6.6 overlaps和overlapped by  257

    12.6.7 starts和started by  257

    12.7 会话时钟  258

    12.8 事件流和入口点  259

    12.9 滑动窗口  260

    12.10 事件的内存管理  261

    12.11 实战:行情提醒  262

    12.11.1 功能说明  262

    12.11.2 规则实现  262

    12.11.3 工程解读  263

    12.11.4 规则解读  266

    12.12 本章小结  267

    第13章 决策模型和表示法  268

    13.1 DMN的实现级别  268

    13.2 决策需求图  269

    13.3 规则表达式  270

    13.3.1 数据类型  270

    13.3.2 条件语句  271

    13.3.3 循环语句  271

    13.3.4 范围语句  272

    13.3.5 内置函数  272

    13.3.6 变量和函数名  283

    13.4 盒装表达式  283

    13.4.1 决策表  283

    13.4.2 字面表达式  284

    13.4.3 上下文  285

    13.4.4 关系  285

    13.4.5 函数  285

    13.4.6 调用  286

    13.4.7 列表  286

    13.5 实战:网购图书  287

    13.5.1 功能说明  287

    13.5.2 规则实现  287

    13.5.3 验证规则  301

    13.6 本章小结  304

    第14章 PMML与机器学习  305

    14.1 PMML  305

    14.2 PMML的实现级别  308

    14.3 PMML与机器学习的关系  309

    14.4 实战:申请设备  310

    14.4.1 功能说明  310

    14.4.2 规则实现  311

    14.4.3 验证规则  322

    14.5 本章小结  323
  • 内容简介:
    这是一部由浅入深、从理论到实践、以实战方式讲解开源规则引擎Drools的原理、模型、使用方式、适用场景和案例实现的著作,得到了国内外众多知名企业专家的一致好评。
      本书的作者都就职于红帽软件,长期深耕开源中间件技术,具有深厚的产品知识及项目经验,曾多次参与企业的IT系统建设和业务规则实现,为业务规则系统的建设者和使用者答疑解惑。本书正是对作者多年实战经验的总结,对国内外企业的规则系统建设具有很高的参考价值。
      全书共14章,按照难易程度,可分为初级、中级和高级三个层次。
      初级(第1~4章)
      首先,总体介绍Drools的构成、多种使用方式、核心概念;其次,以Hello Drools为例让读者切身体验*简单规则的编写过程,通过对示例工程的解读,让读者理解Drools规则语言的基本语法与模式匹配;再次,对Drools规则语言的方方面面进行详细讲解;*后,深入讲解Drools规则引擎的核心概念。
      中级(第5~11章)
      通过详尽的步骤分别讲解Drools基于主机、容器和云模式的环境搭建,介绍如何基于已搭建的环境进行规则的开发、测试与发布,并通过实战让读者掌握多种规则编写方式:向导式规则、规则模板、领域专用语言、规则表、规则流。
      高级(第12~14章)
      有针对性地讲解Drools在流模式下的复杂事件处理原理、基于决策模型和表示法的规则编写及Drools对机器学习的支持和使用,以帮助读者拓宽思路,将Drools应用到更广阔的领域。
  • 作者简介:
    关泽发

    红帽软件(北京)有限公司资深解决方案架构师,拥有20余年IT从业经验,目前专注于云原生微服务系统架构设计与开发。曾就职于AWS应用现代化团队、红帽服务交付团队、投资银行开发团队,熟悉公有云和私有云生态,擅长企业业务系统的设计、开发与交付。通过微信公众号“撞墙秀”分享了许多项目实践经验与心得。

    陈楚晖

    红帽软件(北京)有限公司首席架构师、开源技术专家,专注于云计算、容器技术、开源中间件、规则引擎的推广。曾就职于甲骨文中间件团队、银行业务开发团队,拥有20余年中间件及应用开发经验,以及丰富的金融企业、政府机构、电信运营商等的应用上云、DevOps、PaaS、系统集成及IT项目管理经验,熟悉开源软件的软件开发、架构设计、系统运维等。
  • 目录:
    目  录 Contents

    赞 誉

    前 言

    第1章 Drools概述  1

    1.1 什么是规则引擎  1

    1.2 Drools是什么  2

    1.3 Drools的组件  2

    1.4 Drools的使用方式  3

    1.4.1  嵌入式  3

    1.4.2 远程调用模式  4

    1.4.3 云提供模式  4

    1.5 Drools的核心概念  5

    1.5.1 规则语言  5

    1.5.2 事实对象  6

    1.5.3 决策引擎  7

    1.6 社区的Drools与企业级的

    Decision Manager  7

    1.7 本章小结  8

    第2章 Drools初体验  9

    2.1 环境准备  9

    2.2 hello drools  9

    2.3 规则语法解读  11

    2.4 Drools的模式匹配  11

    2.5 规则工程解读  13

    2.6 本章小结  15

    第3章 Drools规则语言  16

    3.1 语法说明  17

    3.1.1 包定义  17

    3.1.2 依赖导入  17

    3.1.3 函数  18

    3.1.4 查询  18

    3.1.5 类型声明  19

    3.1.6 全局变量  21

    3.1.7 规则属性  21

    3.1.8 规则的条件  22

    3.1.9 规则的动作  25

    3.1.10 注释  29

    3.1.11 错误提示  30

    3.2 实战:斐波那契数列  32

    3.2.1 功能说明  32

    3.2.2 规则实现  32

    3.2.3 工程解读  33

    3.2.4 规则解读  35

    3.3 本章小结  36

    第4章 Drools决策引擎  37

    4.1 会话  37

    4.1.1 无状态会话  38

    4.1.2 有状态会话  39

    4.1.3 会话池  41

    4.2 推理与真理   42

    4.3 规则执行控制  43

    4.3.1 优先级  44

    4.3.2 议程组  45

    4.3.3 激活组  46

    4.3.4 运行模式  46

    4.3.5 事实传播模式  47

    4.3.6 议程评估过滤??器  48

    4.3.7 规则单元  48

    4.4 Phreak算法  51

    4.4.1 延迟评估  51

    4.4.2 面向集合的传播  52

    4.4.3 网络分段  52

    4.5 查询事实数据  53

    4.6 事件侦听器和日志  54

    4.6.1 事件侦听器  54

    4.6.2 日志  55

    4.7 性能调优项  55

    4.8 实战:费用分摊  57

    4.8.1 功能说明  57

    4.8.2 规则实现  58

    4.8.3 工程解读  59

    4.8.4 规则解读  61

    4.9 本章小结  65

    第5章 远程调用模式  66

    5.1 基于主机的Drools环境搭建  66

    5.1.1 获取介质  66

    5.1.2 安装  69

    5.2 基于容器的Drools环境搭建  74

    5.2.1 环境准备  74

    5.2.2 安装  75

    5.3 实战:将军排队  79

    5.3.1 功能说明  79

    5.3.2 规则实现  79

    5.3.3 工程解读  84

    5.3.4 规则解读  86

    5.4 本章小结  88

    第6章 云提供模式  89

    6.1 环境准备  89

    6.1.1 获取介质  89

    6.1.2 安装OpenShift Local  90

    6.1.3 安装Business Automation Operator  95

    6.1.4 安装业务中心与决策

    服务器  97

    6.1.5 验证安装  99

    6.2 实战:东西在里面吗  101

    6.2.1 功能说明  101

    6.2.2 规则实现  101

    6.2.3 验证规则  110

    6.3 本章小结  113

    第7章 规则的测试  114

    7.1 测试场景设计器  114

    7.1.1 全局参数配置  115

    7.1.2 数据对象别名  115

    7.1.3 表达式语法  115

    7.2 “东西在里面吗”实战的测试  116

    7.2.1 创建测试场景  116

    7.2.2 定义测试场景数据结构  117

    7.2.3 添加用例数据并测试  122

    7.3 “将军排队”实战的测试  125

    7.3.1 创建测试场景与用例  125

    7.3.2 编写背景数据并测试  126

    7.4 本章小结  128

    第8章 向导式规则  129

    8.1 向导式规则设计器  129

    8.1.1 数据对象  129

    8.1.2 设计规则  130

    8.2 实战:商品促销  131

    8.2.1 功能说明  131

    8.2.2 规则实现  131

    8.2.3 验证规则  148

    8.3 本章小结  155

    第9章 向导式规则模板与领域

    专用语言  156

    9.1 向导式规则模板  156

    9.1.1 创建规则模板   156

    9.1.2 定义数据表  157

    9.2 领域专用语言  158

    9.3 实战:积分换礼品  159

    9.3.1 功能说明  159

    9.3.2 规则实现  160

    9.3.3 验证规则  167

    9.3.4 DSL规则实现  168

    9.3.5 验证DSL规则  171

    9.4 本章小结  171

    第10章 规则表  172

    10.1 向导式规则表  172

    10.1.1 创建向导式规则表  172

    10.1.2 导入数据对象类型  174

    10.1.3 添加模式匹配事实  175

    10.1.4 添加约束  176

    10.1.5 添加更新动作  176

    10.1.6 添加插入动作  177

    10.1.7 选择展开列  178

    10.1.8 添加规则表数据  179

    10.2 电子表格规则表  179

    10.3 实战:电脑推荐  181

    10.3.1 功能说明  181

    10.3.2 规则实现  181

    10.3.3 验证规则  193

    10.3.4 转换为电子表格规则表  194

    10.4 本章小结  198

    第11章 规则流  199

    11.1 什么是规则流  199

    11.2 Drools中的规则流  199

    11.3 实战:贷款申请  202

    11.3.1 功能说明  202

    11.3.2 规则流实现  203

    11.3.3 验证规则流  240

    11.4 本章小结  245

    第12章 复杂事件处理  246

    12.1 复杂事件处理中的事件  246

    12.2 将事实数据定义为事件  247

    12.3 事件相关的元数据注解  247

    12.4 事件处理模式  249

    12.4.1 云模式  249

    12.4.2 流模式  250

    12.4.3 反向匹配  250

    12.5 事实属性更改的评估策略与

    侦听  251

    12.6 事件的时间运算符  253

    12.6.1 before和after  254

    12.6.2 coincides  254

    12.6.3 during和includes  255

    12.6.4 finishes和finished by  256

    12.6.5 meets和met by  256

    12.6.6 overlaps和overlapped by  257

    12.6.7 starts和started by  257

    12.7 会话时钟  258

    12.8 事件流和入口点  259

    12.9 滑动窗口  260

    12.10 事件的内存管理  261

    12.11 实战:行情提醒  262

    12.11.1 功能说明  262

    12.11.2 规则实现  262

    12.11.3 工程解读  263

    12.11.4 规则解读  266

    12.12 本章小结  267

    第13章 决策模型和表示法  268

    13.1 DMN的实现级别  268

    13.2 决策需求图  269

    13.3 规则表达式  270

    13.3.1 数据类型  270

    13.3.2 条件语句  271

    13.3.3 循环语句  271

    13.3.4 范围语句  272

    13.3.5 内置函数  272

    13.3.6 变量和函数名  283

    13.4 盒装表达式  283

    13.4.1 决策表  283

    13.4.2 字面表达式  284

    13.4.3 上下文  285

    13.4.4 关系  285

    13.4.5 函数  285

    13.4.6 调用  286

    13.4.7 列表  286

    13.5 实战:网购图书  287

    13.5.1 功能说明  287

    13.5.2 规则实现  287

    13.5.3 验证规则  301

    13.6 本章小结  304

    第14章 PMML与机器学习  305

    14.1 PMML  305

    14.2 PMML的实现级别  308

    14.3 PMML与机器学习的关系  309

    14.4 实战:申请设备  310

    14.4.1 功能说明  310

    14.4.2 规则实现  311

    14.4.3 验证规则  322

    14.5 本章小结  323
查看详情
12