Capital One:实现运行使命关键应用程序的弹性

云计算
re:Invent
0
0
## 视频 <video src="https://dev-media.amazoncloud.cn/30-LibaiGenerate/31-LiBaiRebrandingVideo/FSI314-Capital_One__Achieving_resiliency_to_run_mission_critical_applications-LBrebrandingWCaptionCN.mp4" class="bytemdVideo" controls="controls"></video> ## 导读 从技术上深入了解 Capital One 运行分布式系统的方法。探索实现在亚马逊云科技上运行任务关键型金融服务应用程序所需的可靠性、弹性和最终一致性的模式。学习在依赖性失败时保持系统运行的技术,并了解如何大规模安全运行,包括通过混沌工程和现场可靠性工程推动持续改进。探索事件、流媒体和批处理的示例,重点关注多区域服务,包括 [Amazon Route 53](https://aws.amazon.com/cn/route53/?trk=cndc-detail)、Amazon Auto-Scaling、[Amazon DynamoDB](https://aws.amazon.com/cn/dynamodb/?trk=cndc-detail) 和 [Amazon Aurora](https://aws.amazon.com/cn/rds/aurora/?trk=cndc-detail)。 ## 演讲精华 <font color = "grey">以下是小编为您整理的本次演讲的精华,共1300字,阅读时间大约是6分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。</font> 资深副总裁Sharmila Miller Ravi在富有洞察力的演讲中自信地走上舞台,探讨Capital One迈向云端的历程。她强调,Capital One的策略始于定义理想的客户体验。随着Capital One开始转型成为更领先的技术公司而非仅传统的金融服务公司时,他们勇敢地采取了完全内部开发软件的措施。尽管这是一个巨大的挑战,但这展示了他们对掌控自己命运的承诺。 后来,Capital One决定将所有系统和数据迁移到公共云中。他们有序地关闭了大量的企业数据中心,并成为第一家全面拥抱公共云的主要银行之一。 在迁移到云端后,Capital One开始使用Snowflake数据平台满足所有的数据处理和分析需求。这大大降低了成本,并更好地管理他们的海量数据资产。Snowflake解锁的能力直接推动了Slingshot的诞生,这是Capital One全新的高端云平台,完全建在公共云之上。 在完成所有系统和数据的全面迁移到公共云之后,下一个关键问题是:Capital One如何确保在新的环境中超过客户的预期? Sharmila解释说,对于Capital One来说,衡量其恢复力的是客户体验。如果有一位客户收到了错误的欺诈警报,他们会觉得Capital One的系统没有恢复力,即使底层基础设施在没有停机的情况下优雅地恢复了。她强调了所需的巨大恢复力姿态,因为Capital One每天处理超过70亿次的信用卡交易——这个令人难以置信的数字展示了他们运营的规模。客户的忠诚很大程度上归功于他们对交易处理100%正常运行时间的期望。 夏米拉随后概述了Capital One应对危机的自上而下的策略,该策略从业务团队定义理想的客户体验和相关服务等级协议开始。韧性不仅来自于工程师,还从产品团队开始评估用户故事,以确定可接受的降级模式与完全中断之间的界限。架构团队在事前激烈讨论韧性需求,因为事后修补韧性很少能防止对客户的负面影响。 为了说明这些复杂性,夏米拉展示了一个Capital One信用卡处理系统的高级架构图。她指出,实际上,他们的系统并没有像图表描绘的那样干净有序。总是有多个相互连接的层、API、冗余数据库、缓存和多个真实来源。他们企业架构中固有的这种复杂性产生了必须从客户体验角度考虑的巨大的韧性挑战。架构必须为所有客户接触点(电话、数字服务、欺诈警报和交易处理)提供正确的体验。 夏米拉解释了Capital One希望将韧性工作提前到后台出现故障之前。有一种误解认为,由于系统在云端,所以一切都应该达到4或5个9的韧性。她认为这并不总是必要或合算的。任务关键系统如交易处理确实需要极高的韧性,但并非每个单独组件和服务都需要。从端到端流程出发,并计划好相关服务的全面失败是至关重要的。 作为一个实际例子,夏米拉介绍了Capital One采用的一种有韧性的设计模式。他们的网络和移动应用程序在云端缓存主机数据。这样,如果主机系统崩溃,应用程序可以在主机恢复之前提供缓存的数据。这在混合云-主机环境中展示了智能的抗风险能力。 沙米尔拉随后详细介绍了资本一号核心信用卡云处理系统的架构图。在这个场景中,他们将大型机数据流式传输到云端,并提供REST API和GraphQL查询来访问数据。借助GraphQL界面,他们可以减少不必要的数据传输和相关安全风险。这些例子展示了资本一号致力于有意识地预先设计弹性架构,而非稍后添加。 在此背景下,沙米尔拉邀请了卡特技术的副总裁兼首席架构师凯思琳·德沃特(Kathleen DeVault)加入讨论,以便更技术性地探讨资本一号在弹性方面的实践。尽管沙米尔拉强调,凯思琳的团队规模较小,但实力非常强大。他们不断挑战产品团队构建正确的架构,并从一开始就故意嵌入弹性。 凯思琳开始阐述资本一号的云原生、云优先方法。她概述了他们的标准部署模式,利用所有主要的亚马逊云科技服务——Lambda函数、ECS/Fargate容器、SQS、SNS、AppSync、Step Functions、RDS和DynamoDB。所有这些都部署在跨多个可用区的多区域活跃-活跃配置中,以消除单点故障。 接着,她深入探讨了他们的多区域故障转移方法。应用程序具有健康检查以及精心配置的CloudWatch警报,以跟踪关键指标,如连接池。如果阈值被违反,自动化会更新DNS路由并触发自我修复操作,如自动回收不健康的实例。这加速了检测和恢复时间。 对于资本一号最重要的任务关键工作负载,如信用卡交易处理,他们会通过主动-主动流量路由模式和对关键系统组件的有意超额分配来增强这一标准方法。通过超额分配关键系统组件20%或更多,故障不会由于用尽容量而降低性能。这提高了总体可用性,但当然增加了成本,因此重要的是要选择性和策略性地使用超额分配。 凯瑟琳强调了Capital One采用的一种新型基于细胞的架构模式,旨在优化端到端的交易流程。在每个细胞中,所有执行特定业务交易所需的服务都得到了完整的整合,从开始到结束。这种本地处理方式能够通过避免跨区域间的过多网络跳跃来提高一致性和性能。为了评估细胞整体的健康状况,会进行全面的健康检查,验证整个端到端交易流程(称为“适应性函数”)的各个部分。 接着,她强调了弹性控制面的重要性,并分享了一次主要中断事件的教训。这次事件揭示了脆弱的监控系统和缺乏冗余的持续集成/持续部署(CI/CD)管道。因此,在设计控制面服务时,需要考虑全面的冗余措施,并对云基础设施组件之间的依赖关系有充分的理解。在事件过程中采取逐步恢复的措施,可以实现架构和运营方面的持续改进。 在可观察性方面,凯瑟琳概述了Capital One在处理跨服务流动的交易时的端到端可追溯性和监控方法。通过对复杂数据处理管道中每个阶段的延迟进行跟踪,可以在瓶颈发生级联故障之前发现潜在的延迟问题。此外,还利用复杂的异常检测系统来识别不寻常的流量峰值或错误模式,从而触发警报以调查潜在问题。最终目标是借助数据分析来预测和预防可能导致客户体验受到影响的意外事故。 最后,凯瑟琳介绍了Capital One遵循的一些网站可用性工程师(SRE)的最佳实践,如广泛测试、可观察性、架构弹性、彻底自动化等。此外,还通过比赛日、火灾演练和控制混乱工程实验等方式,使团队为应对现实世界的挑战做好了准备。她还强调了一个持续改进的内部社区模型的重要性,该模型涉及到来自开发、运营、安全和其他团队的领域专家。 总的来说,演讲者详细讲述了Capital One在云和弹性方面的发展历程。他们探讨了用于提高关键金融工作负载的可用性、性能和可靠性的创新组织结构、架构模式和操作实践。以失败为中心的设计、全面的自动化、拥抱学习以及培养追求卓越运营文化的价值在这些讨论中反复出现。Capital One的经历和见解为企业提供了如何利用公共云进行数字化转型的典型范例。 **下面是一些演讲现场的精彩瞬间:** 领导者探讨了亚马逊云科技如何应对并迅速解决应用程序连接池规模失控的问题,强调了亚马逊云科技在早期发现和快速解决基础设施问题方面的优势。 ![](https://d1trpeugzwbig5.cloudfront.net/FSI314-Capital_One__Achieving_resiliency_to_run_mission_critical_applications/images/rebranded/FSI314-Capital_One__Achieving_resiliency_to_run_mission_critical_applications_0.png) 领导者强调了通过从错误和观察中学习来不断完善系统的持续改进的重要性。 ![](https://d1trpeugzwbig5.cloudfront.net/FSI314-Capital_One__Achieving_resiliency_to_run_mission_critical_applications/images/rebranded/FSI314-Capital_One__Achieving_resiliency_to_run_mission_critical_applications_1.png) 演讲者强调了拥有一套自动化的事故响应流程以便在夜间也能快速解决问题的必要性。 ![](https://d1trpeugzwbig5.cloudfront.net/FSI314-Capital_One__Achieving_resiliency_to_run_mission_critical_applications/images/rebranded/FSI314-Capital_One__Achieving_resiliency_to_run_mission_critical_applications_2.png) 高度可靠的系统的关键在于了解运行状况、降低平均检测时间、缩小问题解决范围以及限制影响范围。 ![](https://d1trpeugzwbig5.cloudfront.net/FSI314-Capital_One__Achieving_resiliency_to_run_mission_critical_applications/images/rebranded/FSI314-Capital_One__Achieving_resiliency_to_run_mission_critical_applications_3.png) 领导者强调了提前发现问题、控制影响范围、提高透明度和推动共同责任以提高可靠性的重要性。 ![](https://d1trpeugzwbig5.cloudfront.net/FSI314-Capital_One__Achieving_resiliency_to_run_mission_critical_applications/images/rebranded/FSI314-Capital_One__Achieving_resiliency_to_run_mission_critical_applications_4.png) ## 总结 Capital One致力于实现其关键任务应用的高弹性。弹性始于定义以客户为中心的服务水平协议(SLA)和架构。他们将架构和SRE由一位领导者负责,因为预先设计弹性至关重要。关键技巧包括在故障期间缓存过时数据,隔离组件,构建冗余,优雅重试和断路器。监控漏洞仍然会导致故障,因此改善可观察性是一个持续的过程。游戏日和混沌工程揭示了弱点。更快的检测和自动自愈是至关重要的——即使是过时的数据也比故障期间的错误更好。通过过度分配防止性能下降的活动活跃基础设施成本更高,因此要明智地选择。新的基于单元格的架构将相关的微服务放在一个区域中以实现速度和一致性。控制平面也必须具有弹性。Route 53故障暴露了它们的监测和部署系统不是多区域的。事后分析和社区合作带来了持续改进。目标是使用领先指标预测问题之前预防客户影响。 ## 演讲原文 ## 想了解更多精彩完整内容吗?立即访问re:Invent 官网中文网站! [2023亚马逊云科技re:Invent全球大会 - 官方网站](https://webinar.amazoncloud.cn/reInvent2023/?s=8739&smid=19458 "2023亚马逊云科技re:Invent全球大会 - 官方网站") [点击此处](https://aws.amazon.com/cn/new/?trk=6dd7cc20-6afa-4abf-9359-2d6976ff9600&trk=cndc-detail "点击此处"),一键获取亚马逊云科技全球最新产品/服务资讯! [点击此处](https://www.amazonaws.cn/new/?trk=2ab098aa-0793-48b1-85e6-a9d261bd8cd4&trk=cndc-detail "点击此处"),一键获取亚马逊云科技中国区最新产品/服务资讯! ## 即刻注册亚马逊云科技账户,开启云端之旅! [【免费】亚马逊云科技“100 余种核心云服务产品免费试用”](https://aws.amazon.com/cn/campaigns/freecenter/?trk=f079813d-3a13-4a50-b67b-e31d930f36a4&sc_channel=el&trk=cndc-detail "【免费】亚马逊云科技“100 余种核心云服务产品免费试用“") [【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用”](https://www.amazonaws.cn/campaign/CloudService/?trk=2cdb6245-f491-42bc-b931-c1693fe92be1&sc_channel=el&trk=cndc-detail "【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用“")
目录
亚马逊云科技解决方案 基于行业客户应用场景及技术领域的解决方案
联系亚马逊云科技专家
亚马逊云科技解决方案
基于行业客户应用场景及技术领域的解决方案
联系专家
0
目录
关闭