HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

eBay 平台自动升级解决方案

作者:Aditya Kulkarni

  • 2023-06-21
    北京
  • 本文字数:1072 字

    阅读完需:约 4 分钟

eBay平台自动升级解决方案

最近,eBay 分享了他们在采用管道驱动的自动化解决方案方面的进展。该解决方案让他们能够实现对其框架和基础设施的持续更新。该解决方案的架构有可能变得更加通用,因为它采用了可插拔和松散耦合的方式,提供了良好的可扩展性。


eBay 的平台包括两个关键组件:作为应用程序代码基础的框架和负责托管应用程序的云基础设施。通过利用自动化解决方案,eBay 简化了作业的准备、执行和验证过程,从而显著提高了生产率。


在这个庞大而复杂的市场中,存在各种类型的升级,例如框架升级、框架迁移和云迁移。由于平台的规模和复杂性,这些升级在持续地发生,这也说明了 eBay 系统在不断演化和增强。


我们以一个特定的云迁移案例为例。在这个案例中,我们需要将云基础设施从依赖虚拟机的 Openstratus 迁移到基于容器技术的 Kubernetes。这个迁移对应用程序开发生命周期有所影响,因为它涉及从基于库的清单方法到基于镜像的清单方法的转换。要完成这种类型的迁移,通常需要完成定义好的一系列任务,包括元数据收集、配置工作负载、迁移网络拓扑和流量、创建新实例、实现监控,以及停用以前基于虚拟机的资源池。


只依赖单独的脚本或自动化工具可能不足以确保平台级变更的质量。因此,eBay 团队为他们的自动化解决方案设想了一些特定的功能,包括要求每个工作流包含多个任务,每个任务与生态系统进行无缝交互以执行必要的操作。此外,还需要对工作流任务进行有效的管理和编排,确保自动化框架里的操作能够顺利执行。


该解决方案的架构如下图所示。



图片来源:https://tech.ebayinc.com/engineering/ebays-common-automation-solution-for-platform-evolution/


架构包含了两个主要组件:编排器和可插拔管道。编排器负责根据输入来确定流,并相应地执行预定义任务。在执行流时,编排器确保任务上下文的持久化,可以在下一个任务执行之前对其进行恢复。然后,编排器利用Quartz作为任务调度引擎对任务进行顺序处理。


在编排器启动期间,会有一个流管理器来预加载流定义并激活负责编排任务执行的任务监听器。此外,流管理器还支持任务重试或在必要时跳过特定任务等功能。编排器的内部功能如下所示。



图片来源:https://tech.ebayinc.com/engineering/ebays-common-automation-solution-for-platform-evolution/


之前已经报道了 eBay 开始使用契约测试来安全地演化内部API和满足客户端团队的需求。


eBay 的平台演进涉及可重用任务和组件,包括可以跨不同流共享的强化通用任务。平台团队认为,他们基于管道的自动化解决方案将是支持未来基础设施和框架升级的关键能力。


原文链接

https://www.infoq.com/news/2023/06/ebay-platform-upgrade-automation/

2023-06-21 13:163552

评论

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

OpenHarmony 技术日| 锻英才以应时需 协教育同繁生态

科技汇

「Spring」@ConfigurationProperties——从基础到源码

Geek_rze78a

Java spring 源码

英特尔分享进军独显市场的背后思考

科技新消息

开源社区问与答

CnosDB

IoT 时序数据库 开源社区 CnosDB infra

JWTToken在线编码生成

入门小站

工具

云原生应用配置中心简述

穿过生命散发芬芳

4月月更

超干货 | 手把手教你快速构建一个企业自有“微信”!

融云 RongCloud

聊聊项目外包

石云升

创业 项目管理 职场经验 4月月更 项目外包

[Day25]-[二叉树]二叉搜索树中的插入操作

方勇(gopher)

LeetCode 二叉树 数据结构算法

Go语言入门很简单:Go 中的作用域和变量隐藏

宇宙之一粟

作用域 Go 语言 4月月更

中国科技人,在残酷春天里翘首等待

白洞计划

低代码在线文档 — VitePress网站生成

源字节1号

软件开发

区块链行业一周热点回顾|马斯克回应狗狗创始人;虎符交易所回购HOO

区块链前沿News

马斯克 Hoo 虎符交易所 doge

攻克编译器技术(1)

刘旭东

编译器 4月月更

PingCode 完成近亿元人民币C轮融资,打造世界级研发管理与协作平台

爱吃小舅的鱼

Docker知识对应验证

Docker 4月月更

Docker下,极速体验编译pinpoint1.6.x分支

程序员欣宸

Java 分布式 4月月更

「微服务的细节」—— 如何获取本地IP?

袁世超

微服务

求推荐一款免费的项目(OKR)管理系统?

优秀

OKR 项目管理系统

揭秘华为云GaussDB(for Influx):最佳实践之数据建模

华为云开发者联盟

MySQL 数据建模 数据模型 华为云 GaussDB(for Influx)

Windows 11 修改 PIN 的长度为 4 位

HoneyMoose

Android C++系列:string最佳实践

轻口味

c++ android 4月月更

REDIS集群安装运维调优及常见问题处理

IT巅峰技术

性能测试中QPS取样器和RT取样器

FunTester

在线Excel转TSV工具

入门小站

工具

Swoole中的协程使用相关说明,快来围观

CRMEB

企评家|广州珐玛珈智能设备股份有限公司企业成长性报告简述

企评家

直播回顾 | 看完这篇入门数仓研发,跑通复杂业务数据建模

个推

数据中台 数据仓库 数据建模 维度建模 范式建模

linux之service命令

入门小站

C语言总结_数组与函数传参练习题

DS小龙哥

4月月更

DevSecOps“内置安全保护”,让软件研发“天生健康”

华为云开发者联盟

DevOps DevSecOps 软件研发 安全架构设计 安全隐私

eBay平台自动升级解决方案_中间件_InfoQ精选文章