弹性模式
弹性是系统优雅处理和恢复故障的能力。应用程序通常是多租户形式托管在云上,使用共享平台服务,竞争资源和带宽,通过互联网进行通信,在商业硬件上运行意味着出现短暂或永久性故障的可能性增加。检测故障和快速有效地恢复是保持弹性的必要条件。
模式 | 总结 |
---|---|
隔板模式(Bulkhead) | 将应用程序的元素隔离到池中,如果其中一个失败,其它的将继续运行。 |
断路器模式(Circuit Breaker) | 连接到远程服务或资源时, 处理可能需要花费时间来修复的故障。 |
事务补偿模式(Compensating Transaction) | 撤消通过一系列步骤执行的工作,它们一起定义最终一致的操作。 |
健康端点监控模式(Health Endpoint Monitoring) | 在应用程序中执行功能检查,外部工具可以定期通过暴露的端点访问。 |
选举模式(Leader Election) | 通过选举一个实例作为负责管理其它实例的负责人,来协调分布式应用程序中的协作任务实例集合执行的操作。 |
基于队列的负载均衡模式(Queue-Based Load Leveling) | 使用一个队列作为任务和服务之间的缓冲区,平滑间歇性重负载。 |
重试模式(Retry) | 在应用程序尝试连接到服务或网络资源遇到预期的临时故障时,让程序通过透明地重试以前失败的操作来处理。 |
调度代理主管模式(Scheduler Agent Supervisor) | 在一组分布式服务和其它远程资源之间协调一组操作。 |