Kestra:高性能、基于 Java 的编排平台

Kestra 是一个基于 Java 构建的事件驱动的编排和调度平台,它利用 YAML 进行工作流定义(您可以将其视为工作流的 Terraform)。

Kestra 可以简化计划和事件驱动的工作流程。通过将基础设施即代码最佳实践引入数据、流程和微服务编排,您可以构建可靠的工作流程并充满信心地管理它们。

只需几行代码,您就可以直接从 UI创建流程。借助用于定义编排逻辑的声明式 YAML 接口,业务涉众可以参与工作流创建过程。

大多数编排器都是用 Python 编写的,但我们选择 Java 是因为它的高性能和强大的生态系统来创建高可用和容错的编排器。该架构采用微服务方法专为大型部署而设计,其中每个组件都可以独立部署和扩展。对于小型部署,可以使用独立模式。

Kestra 的通信是异步的并且基于排队机制。

它利用 Micronaut 框架并提供两个运行器:

  • 一个使用数据库(JDBC)作为消息队列和资源存储,
  • 另一个使用 Kafka 作为消息队列和 Elasticsearch 作为资源存储。

该平台是完全可扩展的并且基于插件,为各种工作流任务、触发器和数据存储选项提供了丰富的插件集。

关键概念

  1. Flow是 Kestra 的主要组成部分。它是您的任务和编排逻辑的容器。
  2. Namespace用于提供逻辑隔离,例如分离开发和生产环境。命名空间就像文件系统上的文件夹 - 它们将流组织成逻辑类别,并且可以嵌套以提供层次结构。
  3. Tasks是流程中的原子操作。默认情况下,列表中的所有任务将按顺序执行,并可使用其他自定义选项并行运行任务或在需要时允许特定任务失败。
  4. Triggers定义流程何时运行。在 Kestra 中,流是根据事件触发的。此类事件的示例包括:
    • 定期的时间表 
    • API  调用(Webhook触发器)
    • 从UI临时执行 
    • 流触发器-可以使用流触发器或子流从其他流触发流,从而实现高度模块化的工作流。
    • 自定义事件,包括新文件到达(文件检测事件)、消息总线中的新消息、查询完成等。
  • Inputs允许您将运行时特定的变量传递给流程。它们是强类型的,并允许附加验证规则。

    Kestra 中的大多数任务都可以作为插件使用,但核心库中提供了许多类型的任务,包括支持各种编程语言(例如 Python、Node、Bash)的 ao 脚本任务以及编排打包到 Docker 容器中的业务逻辑的能力图片。

    丰富的编排能力
    Kestra 提供了各种任务来处理简单和复杂的业务逻辑,包括:

    • 子流
    • 重试
    • 暂停
    • 错误处理
    • 条件分支
    • 动态任务
    • 顺序任务和并行任务
    • 通过将标志设置disabled为,在需要时跳过任务或触发器true。
    • 配置任务、流程和触发器之间的依赖关系
    • 先进的调度和触发条件
    • 回填
    • 蓝图
    • 通过向任何组件添加 Markdown 描述来记录您的流程、任务和触发器
    • 添加标签以向流程添加其他元数据,

    可以直接从 UI 编写工作流程。编写工作流程时,UI 提供:

    • 自动完成
    • 语法验证
    • 嵌入式插件文档
    • 作为蓝图提供的示例流程
    • 拓扑视图(有向无环图中的依赖关系视图)会在您修改和添加新任务时实时更新。

https://www.jdon.com/69023.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/103218.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MobaXterm使sftp目录与cmd目录同步

MobaXterm使sftp目录与cmd目录同步 创建session时在ssh菜单栏中选择Advanced SSH settings其中SSH-browser type 选择SCP(enhanced speed) 勾选Follow SSH path

Red Hat 8 安装Docker返回找不到镜像的问题(Status code: 404)

文章目录 小结问题解决参考 小结 Red Hat 8 yum 指令安装Docker社区版时返回了Status code: 404错误,也就是找不到相应的仓库镜像,进行了解决。 问题 环境: Red Hat 8.3 首先安装了 yum install -y yum-utils配置Red Hat 8的Docker的镜像仓库&#x…

Ubuntu18.04中QT安装下载安装pcl和vtk以及使用过程中踩过的坑

一、先记录一下下载过程中踩过的坑 问题1:QVTKOpenGLNativeWidget和QVTKWidget 之前从来没有接触过QT中显示3D点云方面的知识,了解到可以用pcl,然后在网上各种找pcl下载的相关内容,想要在QT中显示出来,需要用到VTK&a…

TS(五):装饰器

装饰器 启用装饰器支持类装饰器定义并使用装饰器对比不使用装饰器装饰器叠加实现消息提示统一响应装饰器工厂 方法装饰器登录状态验证数据请求 属性装饰器大小写转换 元数据安装依赖基础用法 参数装饰器验证参数是否为必填项 启用装饰器支持 修改 tsconfig.json {"exper…

和鲸 ModelWhale 与华为 OceanStor 2910 计算型存储完成兼容性测试

数智化时代,数据总量的爆炸性增长伴随着人工智能、云计算等技术的发展,加速催化了公众对于数据存储与应用的多元化需求。同时,数据也是重要的基础资源和战略资源,需要严格保障其安全性、完整性。搭建国产数据基础设施底座&#xf…

信息系统项目管理师第四版学习笔记——高级项目管理

项目集管理 项目集管理角色和职责 在项目集管理中涉及的相关角色主要包括:项目集发起人、项目集指导委员会、项目集经理、其他影响项目集的干系人。 项目集发起人和收益人是负责承诺将组织的资源应用于项目集,并致力于使项目集取得成功的人。 项目集…

实验2.1.2 交换机的常用配置

项目2 交换技术的位置 活动2 交换机的常用配置 一、具体要求: (1)添加1台计算机,将标签名更改为PC1。 (2)添加1台S3700-26C-HI交换机,标签名为SWA,将交换机的名称设置为SWA。 &am…

AI:37-基于深度学习的安全帽检测方法研究

随着人工智能的快速发展,安全问题日益受到关注。在工业生产、建筑工地和其他危险环境中,安全帽的佩戴是预防头部伤害的重要措施。本文研究了基于深度学习的安全帽检测方法,通过分析图像数据中的头部和安全帽,实现了自动化安全帽检测和预警系统。 1.随着工业自动化的推进和…

华为云云耀云服务器L实例评测 | 实例评测使用之硬件参数评测:华为云云耀云服务器下的 Linux 磁盘目录分析神器 ncdu

华为云云耀云服务器L实例评测 | 实例评测使用之硬件参数评测:华为云云耀云服务器下的 Linux 磁盘目录分析神器 ncdu 介绍华为云云耀云服务器 华为云云耀云服务器 (目前已经全新升级为 华为云云耀云服务器L实例) 华为云云耀云服务器…

关键词搜索快手商品列表数据,快手商品列表数据接口,快手API接口

在网页抓取方面,可以使用 Python、Java 等编程语言编写程序,通过模拟 HTTP 请求,获取快手网站上的商品页面。在数据提取方面,可以使用正则表达式、XPath 等方式从 HTML 代码中提取出有用的信息。值得注意的是,快手网站…

Android Studio: unrecognized Attribute name MODULE

错误完整代码: ������ (1.8.0_291) �г����쳣������&#xff…

17个开源的Go语言博客和CMS解决方案

Go语言,也称为Golang,是一种为构建高效、可靠和可扩展软件而设计的开源编程语言。它于2007年在Google开发,现在广泛用于开发Web应用程序、网络工具和系统软件。 为什么使用基于Go的CMS解决方案? 这些优势使Go成为开发可扩展、高…

ansible的介绍安装与模块

目录 一、ansible简介 二、ansible特点 三、Ansible核心组件与工作原理 1、核心组件 2、工作原理 四、ansible的安装 五、ansible 命令行模块 1.command 模块 2.shell 模块 3.cron 模块 4.user 模块 5.group 模…

StreamBuilder 用法示例

streambuilder 用法示例 Flutter 中的 StreamBuilder Widget 是什么? StreamBuilder Widget是一个 响应 数据异步处理的StatefulWidget 。换句话说,我们可以说它能够保留“运行摘要”和/或记录并记录数据流中的“最新数据项”。 基本上它有两个参数。 …

如何在Synology群晖DSM中为不同用户设置权限

在使用Synology 群晖NAS时往往需要为不同的用户添加各自的账户权限,我们希望他们可以自由使用自己的主文件夹,但不要互相看到别人的主文件夹,更不要互相浏览别人主文件夹下的内容,应该怎么设置呢?DSM系统中有完善的文件…

阿里云10M公网收费价格表(一年和1个月报价)

阿里云服务器10M带宽收费价格表,阿里云服务器上海地域10M带宽一年优惠价格5355元,10M带宽一个月525元,地域不同带宽价格不同,阿里云服务器网以华东1(上海)地域为例,5M及5M以下带宽按照23元一个月…

minigpt-4 本地部署

minigpt-4 git主页。 笔者参考了深度学习笔记–本地部署Mini-GPT4,使用了http链接, huggingface下载llama和vicuna权重的download.txt分别如下: http://huggingface.co/decapoda-research/llama-7b-hf/resolve/main/.gitattributes http://…

SqlServer--get 和 post 请求 http接口

1. 开启 不开启报错 如下 4.1 SQL Server blocked access to procedure ‘sys.sp_OACreate’ sp_configure show advanced options, 1;GORECONFIGURE;GOsp_configure Ole Automation Procedures, 1;GORECONFIGURE;GO2. post Declare ServiceUrl nvarchar(MAX) Declare req_…

UI设计师岗位的基本职责八篇

UI设计师岗位的基本职责1 职责: 1. 负责公司互联网产品app、web、h5等的用户界面设计工作; 2. 负责运营活动相关的平面及视频设计支持; 3. 负责完成产品相关的界面、图标、动画等的图形界面设计,并参与制定、编写产品视觉设计规范文档; 4. 整理和分…

多服务器云探针源码(服务器云监控)/多服务器多节点_云监控程序python源码

源码简介: 多服务器云探针源码(服务器云监控),支持python多服务器多节点,云监控程序源码。它是一款很实用的云探针和服务器云监控程序源码。使用它可以帮助管理员能够快速监控和管理各种服务器和节点,实用性强。 源码链接: 网盘…