数据采集、数据融合、平台能力构建、AI算法支持等方面最新技术实践分享>> 了解详情
写点什么

亚马逊云科技开源 Event Ruler

  • 2022-09-24
    北京
  • 本文字数:1252 字

    阅读完需:约 4 分钟

亚马逊云科技开源Event Ruler

亚马逊云科技最近宣布开源Event Ruler,一个管理 EventBridge 路由规则的组件。对于需要几乎实时为任意数量事件匹配大量模式、策略或表达式的开发人员来说,这个项目是一个值得考虑的新选择。


Event Ruler 使用 Java 开发,提供了用于声明模式匹配规则、显示数据记录(事件)和大规模查找匹配每个事件规则的 API,帮助开发人员构建出以每秒几十万个事件的速度匹配任意数量规则与事件的应用程序。


事件和规则都是 JSON 对象,规则还可以通过内置的查询语言(可用于描述自定义匹配模式)来表示。例如,描述图像的 JSON 事件是这样的:

{  "Image" : {  "Width" :  800,  "Height" : 600,  "Title" :  "View from 15th Floor",  "Thumbnail" : {    "Url" :  "http://www.example.com/image/481989943",    "Height" : 125,    "Width" :  100  },  "Animated" : false,  "IDs" : [116, 943, 234, 38793]  }}
复制代码


这个 JSON 可以使用 JSON 规则(只过滤静态图像)进行过滤:

{  "Image": {    "Animated" : [ false ]  }}
复制代码


示例来源:https://aws.amazon.com/blogs/opensource/open-sourcing-event-ruler/


亚马逊云科技首席软件工程师 Rishi Baldawa 解释说:


这为需要为任意数量事件匹配大量模式、策略或表达式的人提供了一种新颖的解决方案,而且不影响速度。无论事件是个位数还是几十万个,你都可以对它们进行路由、过滤或与任何流量进行近乎实时的比较。这种速度主要与规则的数量或在这些规则中定义的模式无关。


Event Ruler 已在多个 Amazon 服务中生产就绪,包括EventBridge——一种无服务器事件总线服务,帮助开发人员和架构师将应用程序与来自各种来源的数据连接起来。新开源的项目包括了 AWS 托管服务尚未提供的特性。EventBridge 首席产品经理 Nick Smit 在推特上写道:


你会注意到它提供了一些特性,如 $or、后缀匹配和忽略大小写的 equals 比较,这些特性在EventBridge中都还没有。我们计划在未来将其包括在内。我们很高兴看到社区将带来的新想法!


Tim Bray 是亚马逊云科技的前副总裁和杰出工程师,也是 Event Ruler 背后的开发人员之一,他在一篇名为“Hello,Ruler”的文章中谈到了新项目的应用场景。


这个项目在亚马逊云科技内部被广泛使用。它在云基础设施之外是否也有用?我的答案是肯定的,因为越来越多的应用程序使用松散耦合的事件驱动互连。例如,我认为可能有很多 Kafka 应用程序可以通过应用这种高性能声明式过滤来提高消费者的效率。


宣布OpenSearch一年之后,亚马逊云科技又推出了新的开源项目和计划,这些项目和计划大多在亚马逊云科技的开源博客资讯中有介绍,很多人相信亚马逊云科技正在提高其开源声誉。Bray 补充说:


亚马逊云科技从开源中获益良多,所以很高兴看到他们也向开源社区回馈了一些东西,一些从零开始构建的东西,一些不是只对亚马逊云科技有利的东西。


Event Ruler采用了 Apache 2.0 许可,托管在 GitHub 上。


原文链接

AWS Open Sources Event Ruler


相关阅读:

AWS 数据库迁移服务:将 Oracle 数据库迁移到 MySQL

AWSGoat:对 AWS 云解决方案进行渗透测试

亚马逊云科技宣布 Lambda 分级定价

2022-09-24 08:003984

评论

发布
暂无评论
发现更多内容

这个中秋,国潮元宇宙的A新玩法是……?

文心大模型

redis数据类型

想要飞的猪

【C语言深度剖析】重点详解函数的形参和实参、传值和传址

Albert Edison

开发语言 传值 C语音 9月月更 传址

【JS】防抖与节流---在定义时返回的是回调函数

Sam9029

JavaScript 前端 防抖节流 9月月更

力扣260 - 只出现一次的数字||| 【哈希映射、异或位运算+分治思想】

Fire_Shield

位运算 哈希表 9月月更

Python 教程之变量(1)—— 变量、表达式、条件和函数

海拥(haiyong.site)

Python 9月月更

Ansible如何使用lookup插件模板化外部数据

山河已无恙

ansible 9月月更

「工作小记」后台系统代码简洁之路-详情页设计

叶一一

前端 设计模式 React Hooks 9月月更

HTML笔记2

喜羊羊

9月月更

HTML笔记3

喜羊羊

9月月更

LeetCode-861. 翻转矩阵后的得分(Java)

bug菌

9月日更 9月月更

InnoSetup制作补丁包替换文件操作

中国好公民st

c++ qt 9月月更

Nodejs安装及环境配置

nodejs NVM 9月月更

计算机网络——OSI参考模型

StackOverflow

编程 计算机网络 9月月更

C++ 学习 ------cmath 头文件的源码学习 03

桑榆

c++ 源码阅读 9月月更

HTML笔记1

喜羊羊

9月月更

IntelliJ IDEA远程调试Elasticsearch6.1.2

程序员欣宸

elasticsearch 9月月更

FreeRTOS记录(五、FreeRTOS任务通知)

矜辰所致

FreeRTOS 9月月更 任务通知

创立一年就估值5亿美金,这个项目是怎么做到的?

One Block Community

区块链 创业 融资 defi

Python 教程之数据分析(7)—— Jupyter Notebook 入门

海拥(haiyong.site)

Python 9月月更

全球新兴市场移动应用报告

易观分析

移动应用

Java进阶(十三)servlet监听器

No Silver Bullet

Java Servlet 9月月更

库调多了,都忘了最基础的概念 《锁与线程2终结篇》

知识浅谈

线程 9月月更

学人工智能难吗?怎么用它赚到钱?

felix

人工智能 赚钱 副业赚钱 算法

使用 Angular Transfer State 的一个具体例子

Jerry Wang

typescript 前端开发 angular Web Component 9月月更

力扣429 - N叉树的层序遍历【BFS+DFS】

Fire_Shield

LeetCode DFS BFS 9月月更

图解Kafka的服务端的网络通信模型

石臻臻的杂货铺

kafka Kafka实战 九月月更

数据治理(十二):Ranger2.1.0源码编译

Lansonli

数据治理 9月月更

「趣学前端」前端设计模式学习与应用

叶一一

前端 设计模式 9月月更

LeetCode-1. 两数之和(java)

bug菌

9月日更 Leet Code 9月月更

高性能使用索引

周杰伦本人

9月月更

亚马逊云科技开源Event Ruler_云计算_Renato Losio_InfoQ精选文章