Well-Architected Framework 的金融服务 (FS) 视角中的本文档概述了在构建、部署和运营稳健的 FS 工作负载的原则和建议。Google Cloud Google Cloud这些建议可帮助您设置可观测性、自动化和可伸缩性等基本元素。本文档中的 建议与 Well-Architected Framework 的 卓越运营核心 保持一致。
由于 FS 工作负载的 监管要求高且性质敏感,因此卓越运营对于 FS 工作负载至关重要。 Google Cloud 卓越运营可确保云解决方案能够适应不断变化的需求,并满足您对价值、性能、安全性及可靠性的要求。 如果这些方面出现故障,可能会导致巨额财务损失、监管处罚和声誉损害。
卓越运营可为 FS 工作负载带来以下优势:
- 维护信任和声誉:金融机构非常依赖 客户的信任。运营中断或安全漏洞可能会严重损害这种信任,并导致客户流失。卓越运营有助于最大限度地降低这些风险。
满足严格的监管合规性要求:金融服务受 众多复杂法规的约束,例如:
稳健的运营流程、监控和突发事件管理对于证明符合法规要求和避免处罚至关重要。
确保业务连续性和弹性:金融市场和 服务通常持续运营。因此,高可用性和有效的灾难恢复至关重要。卓越运营原则可指导弹性系统的设计和实现。可靠性核心提供了有关此方面的更多指导。
保护敏感数据:金融机构处理大量 高度敏感的客户和财务数据。强大的运营控制、安全监控和快速突发事件响应对于防止数据泄露和维护隐私至关重要。安全性核心提供了有关此方面的更多指导。
优化关键应用的性能:许多金融 应用(例如交易平台和实时分析)都需要 高性能和低延迟。为了满足这些性能要求,您需要高度优化的计算、网络和存储设计。性能优化核心提供了有关此方面的更多指导。
有效管理费用:除了安全性和可靠性之外, 金融机构还关注成本效益。卓越运营包括优化资源利用率和管理云支出的实践。成本优化核心提供了有关此方面的更多指导。
本文档中的卓越运营建议与以下核心原则相对应:
定义 SLA 以及相应的 SLO 和 SLI
在许多 FS 组织中,应用的可用性通常 根据 恢复时间目标 (RTO) 和恢复点目标 (RPO) 指标进行分类。对于为外部客户提供服务的业务关键型应用,可能还会定义服务等级协议 (SLA)。
SLA 需要一个指标框架,该框架从用户满意度的角度代表系统的行为。 站点可靠性工程 (SRE) 实践提供了一种实现所需系统可靠性的方法。 创建指标框架涉及定义和监控关键数值指标,以便从用户的角度了解系统健康状况。例如,延迟时间和错误率等指标可以量化服务的性能。 这些指标称为服务等级指标 (SLI)。开发有效的 SLI 至关重要,因为它们提供了客观评估可靠性所需的原始数据。
如需定义有意义的 SLA、SLI 和 SLO,请考虑以下建议:
- 为每项关键服务开发和定义 SLI。设置定义可接受性能水平的目标值。
- 开发和定义与 SLI 对应的服务等级目标 (SLO)。例如,SLO 可能会规定 99.9% 的请求的延迟时间必须小于 200 毫秒。
- 确定如果服务未达到 SLO,必须采取的内部补救措施。例如,为了提高平台的弹性,您可能需要将开发资源集中用于解决问题。
- 验证每项服务的 SLA 要求,并将 SLA 视为与服务用户的正式合同。
服务等级示例
下表提供了付款平台的 SLI、SLO 和 SLA 示例:
| 业务指标 | SLI | SLO | SLA |
|---|---|---|---|
| 付款交易成功率 | 对所有已发起付款交易中成功处理和确认的交易百分比的定量衡量。 示例:(成功交易数 ÷ 有效交易总数)× 100,以 5 分钟的滚动时间窗口衡量。 |
在特定时间段内保持高付款交易成功率的内部目标。 示例:在 30 天的滚动时间窗口内保持 99.98% 的付款交易 成功率,不包括无效请求 和计划内维护。 |
对付款交易处理的成功率和速度的合同保证。 示例:服务提供商保证,客户发起的 99.0% 的付款交易将在 1 秒内成功 处理和确认。 |
| 付款处理延迟时间 | 从客户发起付款交易到最终确认付款交易的处理所花费的平均时间。 示例:交易确认的平均响应时间(以毫秒为单位),以 5 分钟的滚动时间窗口衡量。 |
付款交易处理速度的内部目标。 示例:确保在 30 天的滚动时间窗口内,99.5% 的付款交易 在 400 毫秒内处理完毕。 |
在指定的时间范围内解决关键付款处理问题的合同承诺。 示例:对于关键付款处理问题 (定义为影响超过 1% 交易的中断), 服务提供商承诺在问题报告或检测到后的 2 小时内解决问题。 |
| 平台可用性 | 核心付款处理 API 和用户界面可供客户运营和访问的时间百分比。 示例:(总运营时间 - 停机时间) ÷ 总运营时间 × 100,以分钟为单位衡量。 |
核心付款平台的正常运行时间的内部目标。 示例:每个 日历月实现 99.995% 的平台可用性,不包括计划内维护窗口。 |
关于付款平台的最低正常运行时间的正式法律约束性承诺,包括未达到该承诺的后果。 示例:平台将保持每个日历月至少 99.9% 的可用性,不包括计划内 维护窗口。如果可用性低于最低水平,客户将获得每月服务费 5% 的服务抵扣金,每下降 0.1% 即可获得一次抵扣。 |
使用 SLI 数据监控系统是否在定义的 SLO 范围内,并确保满足 SLA。通过使用一组明确定义的 SLI,工程师和开发者可以在以下级别监控 FS 应用:
- 直接在应用部署的服务中,例如 GKE 或 Cloud Run。
- 使用基础架构组件(例如负载均衡器)提供的日志。
OpenTelemetry 提供了一个开源标准和一组技术,用于捕获所有类型 的遥测数据,包括指标、跟踪记录和日志。 Google Cloud Managed Service for Prometheus 提供了一个全托管式、高度可伸缩的后端,用于大规模处理 Prometheus 指标和运营。
如需详细了解 SLI、SLO 和错误预算,请参阅 SRE 手册。
如需开发有效的提醒和监控信息中心及机制,请将 Google Cloud Observability 工具与 Google Cloud Monitoring结合使用。 如需了解特定于安全的监控和检测功能, 请参阅 安全性核心。
定义和测试突发事件管理流程
明确定义且定期测试的突发事件管理流程直接有助于提高 FS 工作负载的价值、性能、安全性及可靠性。 Google Cloud这些流程可帮助金融机构满足严格的监管要求、保护敏感数据、保持业务连续性并维护客户信任。
定期测试突发事件管理流程可带来以下优势:
- 在峰值负载下保持性能:定期进行性能和负载 测试有助于金融机构确保其基于云的 应用和基础架构能够处理峰值交易量、市场 波动和其他高需求场景,而不会降低性能。此功能对于保持顺畅的用户体验和满足金融市场的需求至关重要。
- 找出潜在瓶颈和限制:压力测试 会将系统推向极限,并使金融机构能够在 潜在瓶颈和性能限制影响关键运营之前 找出它们。这种主动方法使金融机构能够调整其基础架构和应用,以实现最佳性能和可伸缩性。
- 验证可靠性和弹性:定期测试(包括 混沌工程 或模拟故障)有助于验证 金融系统的可靠性和弹性。此测试可确保系统能够从故障中优雅地恢复并保持高可用性,这对于业务连续性至关重要。
- **执行 有效的容量规划**: 性能测试可提供不同负载条件下资源利用率的宝贵数据,这对于准确的容量规划至关重要。 金融机构可以使用这些数据主动预测未来的容量需求,并避免因资源限制而导致的性能问题。
- 成功部署新功能和代码更改:将 自动化测试集成到 CI/CD 流水线中,有助于确保在将更改和新 部署发布到生产环境之前对其进行全面验证。这种方法可显著降低可能导致运营中断的错误和回归风险。
- 满足系统稳定性的监管要求:金融 法规通常要求机构拥有稳健的测试实践,以 确保其关键系统的稳定性和可靠性。定期测试有助于证明符合这些要求。
如需定义和测试突发事件管理流程,请考虑以下建议。
建立明确的突发事件响应程序
一套完善的 突发事件响应程序 包括以下要素:
- 为突发事件指挥官、调查员、沟通员和技术专家定义的角色和职责,以确保有效且协调的响应。
- 定义的通信协议和上报路径,以确保在突发事件期间及时有效地共享信息。
- 在 runbook 或 playbook 中记录的程序,其中概述了通信、分诊、调查和解决步骤。
- 定期培训和准备,使团队掌握有效响应所需的知识和技能。
定期实施性能和负载测试
定期进行 性能和负载测试 有助于确保基于云的应用和基础架构能够处理峰值 负载并保持最佳性能。负载测试可模拟真实的流量模式。压力测试会将系统推向极限,以找出潜在瓶颈和性能限制。您可以使用 Cloud Load Balancing 和负载测试服务等产品来模拟真实流量。根据测试结果,您可以调整云基础架构和应用,以实现最佳性能和可伸缩性。例如,您可以调整资源分配或调整应用配置。
在 CI/CD 流水线中自动执行测试
将自动化测试纳入 CI/CD 流水线有助于在部署之前验证更改,从而确保云应用的质量和可靠性。这种方法可显著降低错误和回归的风险,并帮助您构建更稳定、更稳健的软件系统。 您可以在 CI/CD 流水线中纳入不同类型的测试,包括单元测试、集成测试和端到端测试。使用 Cloud Build 和 Cloud Deploy等 产品来创建和管理 CI/CD 流水线。
持续改进和创新
对于云中的金融服务工作负载,迁移到云仅仅是第一步。持续增强和创新至关重要,原因如下:
- 加快创新:利用 AI 等新技术 来改进服务。
- 降低成本:消除低效问题并优化资源使用。
- 提高敏捷性:快速适应市场和监管变化。
- 改进决策制定:使用 BigQuery 和 Looker 等数据分析产品做出明智的选择。
如需确保持续改进和创新,请考虑以下建议。
定期进行回顾
回顾 对于持续改进突发事件响应程序以及根据定期性能和负载测试的结果 优化测试策略至关重要。为确保回顾有效,请执行以下操作:
- 让团队有机会反思自己的经验,找出做得好的方面,并找出需要改进的方面。
- 在项目里程碑、重大突发事件或重要测试周期后进行回顾。团队可以从成功和失败中学习,并不断完善流程和实践。
- 使用 “开始-停止-继续” 模型等结构化方法,确保回顾会议富有成效并产生 可行的步骤。
- 使用回顾来找出可以进一步增强变更管理自动化的方面,以提高可靠性并降低风险。
培养学习文化
学习文化有助于安全探索 Google Cloud中的新技术,例如 AI 和机器学习功能,以增强欺诈 检测和个性化财务建议等服务。如需培养学习文化,请执行以下操作:
- 鼓励团队进行实验、分享知识并持续学习。
- 采用无责备文化,将失败视为成长和改进的机会。
- 营造心理安全的环境,让团队敢于冒险并考虑创新解决方案。团队可以从成功和失败中学习,从而打造更具弹性和适应性的组织。
- 培养一种文化,促进分享从突发事件管理流程和测试练习中获得的知识。
及时了解云技术
持续学习对于了解和实施新的安全措施、利用高级数据分析来获得更好的洞见以及采用与金融服务相关的创新解决方案至关重要。
- 及时了解最新进展、功能和最佳实践,最大限度地发挥 Google Cloud 服务的潜力 。
- 在推出新 Google Cloud 功能和服务时,找出 进一步自动化流程、增强安全性以及提高 应用性能和可伸缩性的机会。
- 参加相关会议、网络研讨会和培训课程,以扩展知识并了解新功能。
- 鼓励团队成员获得 Google Cloud 认证 以帮助确保组织拥有在云中取得成功所需的技能 。