软件弹性工程与设计
Facebook是如何防止消息系统在新年前夕发生崩溃?
这是一篇来自IEEE Spectrum的文章,Facebook的Messenger的13亿用户会在新年前夜集中发送的消息,比如新年快乐等祝愿,这种发送量比一年中任何其他日子都多得多。如果一切顺利,这些.
Grab是如何设计弹性系统:断路器
Grab是东南亚(SEA)领先的交通平台,截至2017年5月,Grab平台每天处理230万次乘车。本文重点介绍实现断路器的使用案例,包括与断路配置相关的不同选项。但正如恶劣天气不可避免且通常难以预测一.
Netflix OSS和Spring Boot全面融合
2007年,Netflix开始了走向在云中全面运营的漫长道路。Netflix的大部分后端和中端应用都是使用Java构建的,Netflix工程部门构建了很多基于云的架构库和系统 ,比如用于负载平衡的Ri.
用断路器驯服数据质量
在微服务架构中使用断路器模式,在出现数据质量问题时,断路器会打开,防止低质量数据传播到下游进程。结果是报告中的低质量数据将在某个时间段内丢失,但如果存在,则保证肯定是正确的。本文描述了实施和部署断路器.
微服务断路器Istio与Hystrix比较
Java EE的断路器API设计
如何使用Java EE API,MicroProfile或某些Java EE扩展实现不同的弹性方法,例如断路器,隔板或背压?此外,企业Java弹性方法如何与Kubernetes和Istio等新的云原生.
使用resilience4j-retry实现函数调用重试
Resilience4j中有一个特殊模块(Resilience4j -Retry),它是为Java8和函数式编程设计的容错库,它是具有最小依赖性的轻量级库(主要是vavr) 当你重试时,有很多例子: .
Resilience4j是专为Java8和函数式编程设计的容错库
Netflix OSS的Hystrix替代品,Resilience4j是一个轻量级容错库,受Netflix Hystrix启发,但专为Java 8和函数式编程而设计。轻量级,因为库只使用Vavr(以前.
断路器Netflix OSS Hystrix和Istio的Envoy比较
当我们构建微服务架构时,我们总会通过网络进行更多的调用。但是构建冗余、弹性的分布式系统是一个难题,它需要一个智能的、应用程序感知的负载平衡。Matt Klein最近写了一篇关于现代负载平衡的精彩文章,.
一步步使用Docker设置Node.js
了解如何在Docker容器中设置Node JS: 有一个可运行工作的NodeJS应用程序 通过确保进程在出错时不退出,使节点应用程序具有弹性 通过在代码更改时自动重新启动服务器,使Node应用程序易于.
Spring Cloud Netflix Zuul中的速率限制
Spring Cloud Netflix Zuul是一个包含Netflix Zuul的开源网关。它为Spring Boot应用程序添加了一些特定功能。不幸的是,开箱即用不提供速率限制。除了Spring.
在Spring Cloud中使用OPENFEIGN技巧与最佳实践
与单片应用程序相比,分布式系统中的服务在多台计算机上运行。为了让这些服务相互交互,我们需要某种进程间通信机制。在OpenFeign的帮助下,我将解释如何启动对另一个服务的同步调用。 OpenFign是.
Envoy服务网格如何减轻级联故障?
级联故障是高吞吐量分布式系统中不可用的主要原因之一。在过去的四年中,Lyft已从单片架构转变为数百种微服务。随着微服务数量的增加,由于级联故障或意外内部拒绝服务导致的中断次数也在增加。今天,这些故障情.
应付网络抖动等临时故障的重试策略
REST调用或同步是服务器之间通讯的经常方式,在没有分布式事务机制保障情况下,需要我们开发人员手工进行重试,重试几次失败后进行业务回退操作,重试非常重要,容易造成网络堵塞,引入断路器又过于重量,完善重.
KeyBank银行的DevOps实践分享
该文分享的是如何在Kubernetes和Docker上运行网上银行、采取开源软件,进行数据库演进和引入断路器等IT改革方式。这是一家有着二百年历史的银行,拥有近20,000名员工,在美国排名前15位的.