写点什么

eBay 如何提高通知平台的可靠性

  • 2023-01-17
    北京
  • 本文字数:856 字

    阅读完需:约 3 分钟

eBay如何提高通知平台的可靠性

eBay 工程师一直在使用故障注入技术来提高通知平台的可靠性,并探索其弱点。虽然故障注入是一种常见的行业实践,但 eBay 尝试了一种利用插装将故障注入引入到应用程序层的新方法。

 

该平台负责向第三方应用程序推送平台通知,以提供商品价格、商品库存状态、支付状态等方面的最新变化。它是一个高度分布式和大规模的系统,有许多外部依赖,包括分布式存储、消息队列、推送通知端点等。

 

eBay 工程师 Wei Chen 表示,通常情况下,故障注入是在基础设施层进行的,例如,通过服务器断开连接或超时,或使给定资源暂时不可用,引入 HTTP 错误,从而导致网络故障。这种方法代价高昂,并且对系统的其他部分有许多影响,因此很难单独探索故障的影响。

 

但这并不是唯一可行的方法。相反,可以在应用程序层创建故障,例如,在 HTTP 客户端库中添加特定的延迟以模拟超时。

 

我们对依赖服务的客户端库的类文件进行了插装,以引入我们定义的不同类型的故障。当我们的服务通过插装 API 与底层资源通信时,将会引发引入故障。由于更改了代码,这些故障并没有真正发生在我们的依赖服务中,其效果是模拟的,使我们能够在没有风险的情况下进行实验。

 

三是 eBay 实现的强制调用方法显示错误行为的基本工具:阻塞或中断方法逻辑,例如抛出异常;更改方法的状态,例如更改 response.getStatusCode() 的返回值;以及替换方法参数的值,包括修改发送给方法的参数值。

 

为了实现上述三种类型的插装,我们创建了一个 Java 代理。在代理中,我们实现了一个 classloader ,它将插装应用程序代码中使用方法的代码。我们还创建了一个注解来指示将插装哪个方法,并将插装逻辑放在注解的方法中。

 

此外,eBay 工程师还实现了一个配置管理系统,以动态更改故障注入在运行时的行为。特别是,对于 eBay 应用程序支持的每个端点,工程师可以更改一些参数来测试特定的行为。

 

据 Chen 介绍,eBay 是业界首个使用代码插装在应用程序层实施故障注入的组织。如果你对这种方法感兴趣,请不要错过原文中提供的完整说明。

 

原文链接:

https://www.infoq.com/news/2022/12/eBay-fault-injection-instrument/

2023-01-17 09:416033

评论

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

文心一言 VS 讯飞星火 VS chatgpt (141)-- 算法导论12.1 1题

福大大架构师每日一题

福大大架构师每日一题

华为云11.11 PaaS产品|精密云工程:智能激活业务速率限时优惠倒计时

平平无奇爱好科技

华为云11.11 PaaS产品|云端援手:智能枢纽应对数字资产挑战

平平无奇爱好科技

ShareMouse 破解 for Mac共享鼠标工具 ShareMouse下载安装

Rose

mac软件下载 ShareMouse 破解版 Mac鼠标共享工具 ShareMouse下载

强大的鼠标增强软件BetterMouse 激活版最新中文

胖墩儿不胖y

Mac软件 鼠标增强工具 鼠标管理工具

BNB Chain 成就衍生品 DEX,APX Finance 趁势脱颖而出

股市老人

SQL LIKE 运算符:用法、示例和通配符解释

小万哥

程序员 软件 sql 后端开发 MySQL、

从低代码的骂声说起

小粽

低代码

c语言基础回顾-指针 | AI工程化部署

AIWeker

c AI工程化部署

华为云CodeArts 11.11活动倒计时,新用户福利重磅来袭

平平无奇爱好科技

中国唯一!华为入选Gartner®企业低代码应用平台魔力象限

平平无奇爱好科技

现在的我们需要怎么去布局一级

币离海

NEO: A Learned Query Optimizer 论文

Downal

机智的告警策略,完善监控系统的重要一环

观测云

监控告警 告警策略

什么年代了,还不会 CI/CD 么?

极狐GitLab

CI/CD

IBM SPSS Statistics v27.0.1中文破解版 spss详细图文安装教程

Rose

spss数据统计 IBM SPSS Statistics 27

「智造」第9期:一招砍成本、四档提效率,“智造”下半场如何仗剑破局?

用友BIP

智能制造

SWOT是什么?10个好用的SWOT分析工具盘点,战略分析必备!

彭宏豪95

可视化 画图软件 在线白板 绘图工具 SWOT

飞书智能伙伴之 AI 数智参谋:先进团队,北极星指标也要遥遥领先

Kyligence

指标平台 智能决策

华为云11.11 PaaS产品|坐看云卷云舒:运维开发一步到位

平平无奇爱好科技

Mac文本对比工具UltraCompare中文版 支持M/intel

Rose

文件对比工具 UltraCompare 中文版 UltraCompare 下载

StarRocks 算子落盘:让大查询又快又稳

StarRocks

数据库 OLAP StarRocks

一款专为POS机设计的芯片解决方案

芯动大师

国内首批!华为云云原生中间件DCS&DMS获软件可信“卓越级”认证

平平无奇爱好科技

为什么OpenAPI是未来企业数字化转型的决定性因素?

平平无奇爱好科技

项目管理体系文件代码评审规范

金陵老街

软件开发文档

意图交易:为用户思考,而不是让用户思考

股市老人

国家超级计算济南中心低代码平台应用实践

明道云

LeetCode题解:13. 罗马数字转整数,哈希表,JavaScript,详细注释

Lee Chen

JavaScript LeetCode

华为云11.11 PaaS产品|抢救未来增长策略:稳定、强力的云服务限时优惠进行中

平平无奇爱好科技

eBay如何提高通知平台的可靠性_安全_Sergio De Simone_InfoQ精选文章