物联网关键技术:规则引擎

物联网
物联网系统以及各类互联网分布式系统,消息队列是经常用到的中间件技术。在物联网系统中,消息队列一般和规则引擎结合使用,规则引擎决定消息会进入消息队列的哪个topic。

物联网系统以及各类互联网分布式系统,消息队列是经常用到的中间件技术。在物联网系统中,消息队列一般和规则引擎结合使用,规则引擎决定消息会进入消息队列的哪个topic。

 

物联网关键技术:规则引擎

 

消息队列一般与规则引擎结合使用

为啥要用规则引擎

规则引擎起源于基于规则的专家系统,是专家系统的一个分支,而专家系统可划分为人工智能的范畴。当时人们提出专家系统,是为了让计算机来应用人类专家的经验,并像人类一样进行推理,最终解决特定领域的问题。

规则引擎是一种嵌入在其他应用程序中的程序组件,实现了将业务决策从应用程序代码中分离的作用。业务人员可以使用预定义的规则语义模块编写业务规则。规则引擎解析业务规则,接受数据输入,并根据业务规则做出业务决策。通过编写业务规则,就可以改变数据的处理逻辑,而不需要重新编写应用程序的代码。

当然如果不使用规则引擎,物联网系统只基于消息队列也可以工作,但这样的设计不够灵活,使用规则引擎可以带来很多好处。

与代码不同,规则以不复杂的语言编写,甚至可以通过图形化的工具配置; 业务人员也可以轻松阅读和验证一套规则。

在规则引擎的帮助下,应用程序的扩展性可以变得非常强。如果需要频繁更改需求,可以添加新规则,而无需修改现有规则。

在物联网系统中,当设备基于Topic进行消息通信时,可以使用规则引擎,编写类似SQL的语句对Topic中的数据进行处理,并配置转发规则将处理后的数据转发到其他服务,可以非常方便的对设备的数据进行保存和分析。

AWS IoT

很多公司的物联网云平台都使用了规则引擎组件。以亚马逊的IoT架构为例,IoT设备内嵌SDK 使用MQTT、HTTP 或 WebSockets协议将设备连接到 AWS IoT设备网关。规则引擎验证发布到 AWS IoT的消息,并根据预先定义的业务规则将这些消息分发到另一台设备或云服务。

 

物联网关键技术:规则引擎

 

AWS IoT架构

规则引擎可以将消息分发到AWS Lambda(Serverless托管计算服务)、Amazon Kinesis(大规模流式数据处理)、Amazon S3(可扩展云存储)、Amazon DynamoDB(托管NoSQL数据库)、Amazon SimpleNotification(推送通知服务)、Amazon SimpleQueue Service(消息队列服务)。

 

物联网关键技术:规则引擎

 

AWS IoT与AWS云服务对接

常用规则引擎

规则引擎不仅仅用于物联网,还可用于很多领域,比如保险、信贷、支付等金融风控中。

  • 常用的商业规则引擎包括:IBM ODM(ILOG)、Oracle Business Rules、Sparkling Logic Smarts、TopRules(中软国际)、明策智能决策、益博睿决策引擎等。
  • 常用的开源规则引擎包括:JBoss Drools、Mandarax、OpenRules、JEOPS、InfoSapient、Apache Camel等。
  • 其中Drools是使用最广泛的规则引擎。对于物联网应用来说,除了上述规则引擎以外,还有一种简单的类似规则引擎的服务IFTTT。

 

物联网关键技术:规则引擎

 

IFTTT的典型示例:当Uber到了,把灯亮起提醒我。

IFTTT是“if this then that”的缩写,主要是让用户的网络行为能够引发连锁反应。IFTTT旨在帮助人们利用各网站的开放API,将Facebook、Twitter等各个网站或应用衔接起来,完成特定的任务。已有很多人利用IFTTT服务搭建了属于自己的物联网应用。

 

 

责任编辑:华轩 来源: 今日头条
相关推荐

2021-01-12 14:25:31

物联网Kubernetes云计算

2023-08-29 08:50:34

2023-08-29 08:44:16

视联网技术

2014-09-18 10:14:47

物联网

2019-07-03 10:27:01

物联网技术IOT

2021-01-11 11:15:53

物联网云原生边缘计算

2018-07-18 14:59:43

车联网互联网通信

2018-07-17 05:48:34

车联网互联网物联网

2016-11-23 17:23:39

物联网RFID射频识别技术传感器技术

2023-07-31 14:44:23

物联网人工智能

2018-07-22 14:43:39

物联网IOTIT

2018-09-03 07:00:39

物联网行业物联网IOT

2023-09-06 16:33:05

物联网人工智能

2020-03-02 09:00:00

机器视觉工业4.0物联网

2015-12-18 17:30:12

2018-02-25 05:45:11

2012-08-27 09:02:25

移动互联网

2023-09-19 16:10:28

2018-05-03 08:00:27

传感器物联网智能

2015-10-19 10:22:50

物联网工业发展关键技术
点赞
收藏

51CTO技术栈公众号