快手、孩子王、华为等专家分享大模型在电商运营、母婴消费、翻译等行业场景的实际应用 了解详情
写点什么

亚马逊云科技开源 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:006143

评论

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

模块6(拆分电商系统为微服务)

Geek_701557

Qt|实现边加载数据边显示页面

中国好公民st

qt 7月月更

Spring Cloud源码分析之Eureka篇第六章:服务注册

程序员欣宸

Java SpringCloud 7月月更

内部排序——选择排序

乔乔

7月月更

ORACLE进阶(十)start with connect by 实现递归查询

No Silver Bullet

oracle 递归 7月月更

java零基础入门-抽象类

喵手

Java 7月月更

给自己点鸡汤吧

沃德

程序员 心灵鸡汤 7月月更

Nginx Http模块是如何处理请求的?

Ethan

ngnix

Nginx 部署的虚拟主机如何使用 Let's Encrypt 来进行加密 https

HoneyMoose

MySQL灵魂16问,你能撑到第几问?

了不起的程序猿

Java MySQL 面试题 java程序员

基于STM32+华为云IOT设计的智能家居控制系统_语音+环境检测

DS小龙哥

7月月更

2000字教你如何玩转Linux man命令,隐藏技能非常nice

wljslmz

Linux 运维 man 7月月更

学一招,docker自启动以及容器自启动的解决方案

麦洛

Docker docker image

SAP Fiori 注解 @ObjectModel.readOnly工作原理解析

汪子熙

SAP abap Fiori SAP UI5 7月月更

注入攻击

沃德

程序员 7月月更

ArrayBlockingQueue源码分析-构造方法

zarmnosaj

7月月更

iOS中方法和函数的区别

NewBoy

前端 移动端 iOS 知识体系

【LeetCode】玩筹码Java题解

Albert

LeetCode 7月月更

【这款插件在IntelliJ IDEA中,可以大幅提升工作效率,强烈推荐!】

了不起的程序猿

Java java程序员 实用工具

Flutter 实现爱心三连动画效果

岛上码农

flutter ios 安卓 移动端开发 7月月更

Java 技术栈中间件优雅停机方案设计与实现全景图

bin的技术小屋

dubbo 优雅停机 netty SpringFramework Graceful Shutdown

LeetCode-136. 只出现一次的数字(java)

bug菌

Leet Code 7月月更

你以为,设计一个RPC框架很简单?应该从哪入手,深入剖析? Java架构新资讯

了不起的程序猿

Java RPC java程序员 java 编程

双目立体匹配步骤

秃头小苏

7月月更 双目立体匹配

Python|「函数」递归与迭代

AXYZdong

Python 7月月更

Android 小巧技-不用图片框架,实现加载类似微博超长图片的手法

芝麻粒儿

android 7月月更

iOS中SEL类型

NewBoy

ios 前端 移动端 iOS 知识体系 7月月更

QT 实现文件夹的删除

小肉球

qt 7月月更

面试官灵魂暴击:如何保障消息100%投递成功及保证消息的幂等性?

冉然学Java

Java后端 #技术干货#

跨域的问题终于能解决了

是乃德也是Ned

JavaScript ajax 前端 7月月更

spark调优(五):提交任务优化

怀瑾握瑜的嘉与嘉

7月月更

亚马逊云科技开源Event Ruler_服务革新_Renato Losio_InfoQ精选文章