两年前我作为一名拥有后台开发经验的移动端软件工程师入职 Uber,并负责 APP 端支付功能的开发以及重构。后来我进入了工程师管理团队,并独立带领一个团队。由于我的团队负责很多后端支付相关的系统,因此我有更多的机会接触整个支付系统的后端知识。
来 Uber 工作之前,我几乎没有分布式系统的工作经验。我的背景是一个传统的计算机科学学位和十年的全栈软件开发。然而,虽然我能够画架构图并讨论折中方案,但我对分布式的相关概念(一致性,可用性或者幂等性)了解的并不多。
在本文中,我总结了一些我认为在构建大规模,高可用分布式系统(为 Uber 提供底层支持的支付系统)时必须学习和应用的概念。这是一个每秒负载高达数千个请求的系统,其中关键的支付功能必须能够正确的工作,即使整个系统的某些部分出现故障。本文会是一个完整的清单吗?应该不会。但如果我早点知道这些概念的话,我的工作和生活会轻松很多。因此,就让我们开始来了解诸如 SLA,一致性,数据持久化,消息持久化,幂等性以及其他一些我在工作中需要学习的东西吧。
Read full article from 构建大型支付系统时学到的分布式体系结构概念 - 简书
No comments:
Post a Comment