热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

EventMesh1.3.0发布!支持CloudEvents协议、Standalone、可观测性等

CloudEvents每一个发生(Occurrence)都会产生事件(Event),包含了相关的上下文和数据。每一个事件都具有数据唯一标识。事件代表事实,因此不包括目的地,而消息则传达意图,将数据从源头传送到特定的目的地。

CloudEvents

每一个发生(Occurrence)都会产生事件(Event),包含了相关的上下文和数据。每一个事件都具有数据唯一标识。事件代表事实,因此不包括目的地,而消息则传达意图,将数据从源头传送到特定的目的地。EventMesh 1.3.0 发布!支持 CloudEvents 协议、Standalone、可观测性等

缺乏通用的描述事件的方式意味着开发人员必须不断地重新学习如何消费事件。这也限制了类库、 工具 和基础设施在跨环境时发送事件数据的潜力,如SDK、事件路由器或跟踪系统等。我们从事件数据中实现的可移植性和生产力总体上受到了阻碍。CloudEvents是一个用通用格式描述事件数据的规范,以提供跨服务、跨平台和跨系统的互操作性。CloudEvents得到了大量的行业关注,从主要的云提供商到流行的SaaS公司都有。CloudEvents由云原生计算基金会(CNCF)主办,于2018年5月15日获批为云原生沙盒级项目。

Eventing

在服务器端代码中,事件通常用于连接不同的系统,其中一个系统的状态变化会导致另一个系统的代码执行。例如,当源接收到外部信号(如 HTTP 或 RPC)或观察到一个变化的值(如 IoT 传感器)时,可能会产生一个事件。
为了说明系统如何使用 CloudEvents,下面的图显示了来自源的事件如何触发一个动作。

EventMesh 1.3.0 发布!支持 CloudEvents 协议、Standalone、可观测性等

源(Source)生成消息(Message),其中事件(Event)被封装在协议中。事件到达目的地,触发一个由事件数据提供的动作(Action)。源是源类型的一个特定实例,它允许staging和测试实例。一个特定源类型的开放源软件可以由多个公司或供应商部署。事件可以通过各种行业标准协议(如HTTP、AMQP、MQTT、SMTP)、开源协议(如Kafka、NATS、RocketMQ、RabbitMQ)或平台/供应商特定的协议(AWS Kinesis、Azure Event Grid)来递送。动作处理定义了由特定源的特定事件触发的行为或效果的事件。虽然不在本规范的范围内,但生成事件的目的通常是为了让其他系统能够轻松地对它们无法控制的源中的变化做出反应。源和动作通常是由不同的开发人员建立的。通常情况下,源是一个托管服务,而动作是无服务器函数(如AWS Lambda或Google Cloud Functions)中的自定义代码。EventMesh支持扩展多种协议,内部协议流转示意图如下:
EventMesh 1.3.0 发布!支持 CloudEvents 协议、Standalone、可观测性等

Standalone

EventMesh支持了Standalone Connector功能,在Standalone模式下EventMesh不依赖于任何外部存储组件,方便用户快速体验EventMesh收发事件能力以及相关特性,极大地降低了用户初次体验EventMesh的门槛,我们不建议在生产环境使用该模式,仅在本地体验即可。
 

OpenTelemetry

EventMesh支持了OpenTelemetry的集成,该功能极大的提升了EventMesh的可观测性,集成OpenTelemetry标准化了EventMesh的Metrics与Tracing数据,方便后续对接不同的采集器,目前分别支持将Metrics数据导出到Prometheus,以及将Tracing数据导出到Zipkin。后续还会根据社区内部的需求支持更多的采集器。
 

插件化优化

EventMesh 1.3.0 发布!支持 CloudEvents 协议、Standalone、可观测性等

1.3.0版本极大的提升了EventMesh的可插拔能力,相较于1.2.0版本基于JDK SPI的插件化加载架构,1.3.0版本采用了注解的方式完善了各个类型插件的加载,提供了多种插件在运行时共存的能力,同时相较于1.2.0版本除了支持存储插件Rocketmq-connector以外,我们还提供了Standalone-connector插件,可以通过简单配置实现插件之间的切换与加载;同时协议部分我们也完善了插件化的扩展与支持,在原有的EventMesh原生协议基础上,扩展支持了CloudEvents协议,以此为例,可以很方便用户后续在协议层面进行其他的扩展,后续版本还将丰富更多类型的插件。

致谢

EventMesh 1.3.0 的发布离不开 EventMesh社区的贡献者,在这里感谢为社区做出贡献的小伙伴们:

Committers:
qqeasonchen、xwm1992、ruanwenjun、lrhkobe、iNanos、vongosling、wqliang、keranbingaa、yiliuchen、jonyangx

Contributors:
tydhot、jzhou59、yuzhao244、wangshaojie4039、xiaoyang-sde、dongzl、hagsyn、msdhinesh-geek、sarihuangshanrong、Alonexc、AhahaGe、horoc、zhannicholas、dengqunhua、Roc-00、yuzhoumao、sunxi92、liangyuanpeng、SteveYurongSu

非常感谢各位的积极参与和贡献,同时EventMesh社区非常期待有更多的用户、开发者、厂商参与到EventMesh生态的建设中来。

预告

在后续的版本中,如下特性将会与大家见面:

  • 支持Grpc协议,提升EventMesh传输的性能与效率
  • 支持WasmEdge,增加EventMesh的边缘计算的能力,支持更广泛的应用场景
  • 支持Serverless Workflow工作流编排
  • 支持Event Sourcing与分布式事务
  • ......

EventMesh社区欢迎更多的用户、开发者参与讨论共建。

项目地址

https://github.com/apache/incubator-eventmesh


以上所述就是小编给大家介绍的《EventMesh 1.3.0 发布!支持 CloudEvents 协议、Standalone、可观测性等》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 我们 的支持!


推荐阅读
  • 七大策略降低云上MySQL成本
    在全球经济放缓和通胀压力下,降低云环境中MySQL数据库的运行成本成为企业关注的重点。本文提供了一系列实用技巧,旨在帮助企业有效控制成本,同时保持高效运作。 ... [详细]
  • 本文档提供了详细的MySQL安装步骤,包括解压安装文件、选择安装类型、配置MySQL服务以及设置管理员密码等关键环节,帮助用户顺利完成MySQL的安装。 ... [详细]
  • 深入探讨Web服务器与动态语言的交互机制:CGI、FastCGI与PHP-FPM
    本文详细解析了Web服务器(如Apache、Nginx等)与动态语言(如PHP)之间通过CGI、FastCGI及PHP-FPM进行交互的具体过程,旨在帮助开发者更好地理解这些技术背后的原理。 ... [详细]
  • 本文详细介绍了在 Windows 7 上安装和配置 PHP 5.4 的 Memcached 分布式缓存系统的方法,旨在减少数据库的频繁访问,提高应用程序的响应速度。 ... [详细]
  • 本文探讨了在使用Apache HttpClient 4.x(作为commons-httpclient 3.x的后续版本)时,如何配置默认的HttpContext,以确保每次执行请求时无需显式传递上下文。 ... [详细]
  • 华为云openEuler环境下的Web应用部署实践
    本文详细记录了在华为云openEuler系统上进行Web应用部署的具体步骤,包括配置yum源、安装Apache、MariaDB、PHP及其相关组件,并完成WordPress的安装与配置过程。 ... [详细]
  • 最新进展:作为最接近官方声明的信息源,本文吸引了大量关注。若需获取最新动态,请访问:lkhill.com/ccie-version-5-update ... [详细]
  • 本文介绍了如何通过安装和配置php_uploadprogress扩展来实现文件上传时的进度条显示功能。通过一个简单的示例,详细解释了从安装扩展到编写具体代码的全过程。 ... [详细]
  • Spring Security基础配置详解
    本文详细介绍了Spring Security的基础配置方法,包括如何搭建Maven多模块工程以及具体的安全配置步骤,帮助开发者更好地理解和应用这一强大的安全框架。 ... [详细]
  • 本项目基于网络上找到的一个启动动画包,针对Sony手机上的Miku启动动画进行了个性化调整,并重新打包以适应CM(CyanogenMod)系统。此版本旨在为CM用户提供更加个性化的启动体验。 ... [详细]
  • 吴石访谈:腾讯安全科恩实验室如何引领物联网安全研究
    腾讯安全科恩实验室曾两次成功破解特斯拉自动驾驶系统,并远程控制汽车,展示了其在汽车安全领域的强大实力。近日,该实验室负责人吴石接受了InfoQ的专访,详细介绍了团队未来的重点方向——物联网安全。 ... [详细]
  • VS Code 中 .vscode 文件夹配置详解
    本文介绍了 VS Code 中 .vscode 文件夹下的配置文件及其作用,包括常用的预定义变量和三个关键配置文件:launch.json、tasks.json 和 c_cpp_properties.json。 ... [详细]
  • 本文详细介绍了跨站脚本攻击(XSS)的基本概念、工作原理,并通过实际案例演示如何构建XSS漏洞的测试环境,以及探讨了XSS攻击的不同形式和防御策略。 ... [详细]
  • 本文详细介绍了在PHP中如何获取和处理HTTP头部信息,包括通过cURL获取请求头信息、使用header函数发送响应头以及获取客户端HTTP头部的方法。同时,还探讨了PHP中$_SERVER变量的使用,以获取客户端和服务器的相关信息。 ... [详细]
  • 本文探讨了在使用 MyBatis 进行批量数据处理时遇到的参数绑定异常问题,并提供了详细的解决方案。 ... [详细]
author-avatar
minoz-uuuu
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有