分布式金融架构课 - 任杰微服务&架构技术教程

分布式金融架构课 / 一站式解决金融系统架构核心问题

任杰 eBay支付账务系统负责人,前蚂蚁金服架构师
📅 更新时间:
🔥 热门推荐
  • 📖 课程目录
  • 📝 课程介绍
  • 这个专栏将带你掌握金融软件架构的整体思路,了解金融系统每个部分的挑战点和解决方案,最终帮助你成为金融级人才。

  • 01 | 业务初探:扫了二维码之后发生了什么?

    这节课,我们用跨境电商的支付案例讲解扫码支付,一旦你理解了扫码支付,就在金融技术这个领域入了门。

  • 02 | 原理解读:如何理解第三方支付的业务逻辑和系统组件?

    这节课我们会一起梳理支付的业务逻辑,最终推导出C端支付核心组件。

  • 03 | 产品大观:不同金融业务都有哪些技术实现要点?

    这节课会为你讲解金融业务以及业务对应的技术实现要点,当你看透了问题本质,今后遇到困难的金融问题也可以胸有成竹地应对了。

  • 04 | 领域驱动设计(上):如何设计金融软件顶层架构?

    这节课将从领域驱动设计侧重点、人员组织架构和系统组织架构三个角度,带你理解领域驱动设计中的核心知识点。

  • 05 | 领域驱动设计(下):如何设计统一的金融业务模型?

    这节课我们会选择债券期权业务,带你学习怎么设计统一的金融模型。

  • 答疑集锦(一) | 思考题解析与外汇架构知识拓展

    首先祝你元旦快乐!我们已经学完了第一个模块金融业务与系统的内容。今天我专门为你准备了加餐,把前面的思考题做一个系统梳理。

  • 06 | 计算输入的正确性:怎么选择正确时间的数据?

    这节课将带你学习如何用双时序数据库来正确存储和查询金融数据。

  • 07 | 计算过程的正确性:如何设计正确的数据处理架构?

    这节课我们会学习事件溯源的核心设计,他是金融行业多年来沉淀下来的正确性解决方案。

  • 08 | 计算结果的正确性:怎么保证计算结果是正确的?

    这节课,我们从事前、事中、事后三方面,逐一分析如何保证最终计算结果正确性。

  • 09 | 数据传输的质量:金融业务对数据传输有什么要求?

    这节课我们主要学习金融业务在不同场景下对数据传输的要求是什么,以及解决方案都有哪些。

  • 10 | 数据存储的合理性:金融业务可以不用关系型数据库吗?

    这节课我和你聊一聊金融业务应该如何选择数据存储类型。

  • 11 | 系统优化:如何让金融系统运行得更快?

    系统设计得再好,如果不能及时地完成业务处理也不行。所以,这节课我们来聊聊如何让金融系统运行得更快。

  • 答疑集锦(二) | 思考题解析与账务系统优化

    这篇加餐是第二模块的思考题解析。另外,我还给学有余力的同学额外准备了一个知识点:账务系统的特殊优化。

  • 12 | 正确性分级(上):单机无备份有哪几种不同的一致性?

    这节课我们将一起学习在单机情况下,事务都有哪些隔离级别。

  • 13 | 正确性分级(中):多机无容灾有哪几种不同的一致性实现?

    这一讲我们一起学习怎么在多机无容灾的情况下保证一致性,也就是实现分布式一致性,即分布式的可序列化。

  • 14 | 正确性分级(下):多机有容灾有哪几种不同的一致性?

    这节课我们会学习在有多机容灾的情况下如何保证一致性。

  • 15 | 分布式正确性的存在性(上):什么情况下不存在分布式共识算法?

    这一讲我们来学习,什么情况下不存在正确的分布式共识算法。

  • 16 | 分布式一致性(下):怎么理解最简单的分布式一致性算法?

    这节课我们重点学习Raft算法究竟能做什么,以及它应该怎么使用。

  • 17 | 正确性案例(上):如何实现分布式的事件溯源架构?

    这节课我们会一起学习,如何一步一步解决系统扩容和容灾的问题。

  • 18 | 正确性案例(中):常见分布式数据方案的设计原理是什么?

    这节课我们学习了分布式数据系统的设计原理,分析了Redis,RocksDB、Spanner和TiDB在架构上的取舍思路。

  • 19 | 正确性案例(下):如何在运行时进行数据系统的动态分库?

    这节课主要讲解适用于基于事件溯源的架构应该如何做动态分库,大部分重要的金融系统和数据系统都能适用这个方案。

  • 20 | 容灾(上)如何实现正确的跨机房实时容灾?

    这节课我们学习如何实现正确的跨机房实时容灾。

  • 21 | 容灾(下):如何通过混沌工程提高系统稳定性?

    这节课会学习怎么通过混沌工程来提高系统的正确性。

  • 答疑集锦(三) | 思考题解析与数据库底层实现

    这篇加餐是第三模块的思考题解析。另外,这节课补充了数据库的一些底层实现,以及如何加强这些底层实现来实现两阶段提交。

  • 春节策划第1期 | 分布式金融系统知识,你掌握了多少?

    首先祝你春节快乐,这个假期一共为你安排了3期加餐。今天是第1期,我们通过测试题牛刀小试。

  • 春节策划第2期 | 读书如抽丝,为你推荐一些我读过的好书

    在专栏更新的过程中,有一些同学留言想要我推荐一些金融系统相关的图书,所以我为你精心梳理了一份书单,希望对你有所帮助。

  • 春节策划第3期 | 如何运用架构知识解读春运买票和手游案例?

    首先祝你春节快乐,这个假期一共为你安排了3期加餐。今天是第3期,我们一起分析两个其他行业的案例。

  • 结束语 | 金融之道,与你同行,虽远尤欣

    金融之道,形单影只,与尔同行,虽远犹欣。

  • 结课测试|这些金融架构的问题,你都掌握了么?

    为了帮助你检验自己的学习效果,我特别为你准备了一套分布式金融架构的结课测试题。测试题共有20道题目,满分100分。

📋 课程详细介绍

你将获得 深入理解金融架构需求与底层逻辑 掌握金融架构设计思路与核心技巧 实现金融系统正确性的方式 分布式系统案例分析与容灾详解 讲师介绍 课程介绍 学习的难度主要表现在四个方面:...

你将获得

  • 深入理解金融架构需求与底层逻辑
  • 掌握金融架构设计思路与核心技巧
  • 实现金融系统正确性的方式
  • 分布式系统案例分析与容灾详解

讲师介绍


课程介绍

学习的难度主要表现在四个方面:

  • 金融产品复杂多样,很难抓到每个产品的核心需求;
  • 视野狭窄,不知道金融软件究竟要解决怎样的业务问题;
  • 难以形成系统性思路,很难根据金融产品的特点推导出架构设计如何做,以及为什么要这么做;
  • 缺少相关的项目经验,虽然知道架构上要实现正确性、一致性,但不知道该怎么落地。

针对以上四点,本课程结合作者在金融领域的丰富实战经验,系统梳理了金融业务的核心需求和相应的架构设计思路。深入解析金融系统的重要组成部分,带你攻克每个部分的技术实现难点;明确金融架构的演进规律,掌握常见的技术解决方案,最终将实现分布式金融系统架构的核心知识体系全部交付给你。

课程设计

本课程包括三大部分。

第一部分,金融与业务系统。

讲解常见的金融业务生态及其系统架构需求,重点包括第三方支付、交易所、券商、银行和投资银行等等。通过对这些金融机构和业务的分析,总结共性,最终利用领域驱动设计的思想更好地解决金融软件的复杂度问题。

第二部分,系统的正确性保障。

带你深入学习如何保证金融系统架构的正确性,具体包括业务处理的正确性以及数据处理的正确性,它们是金融系统的必选项。最后还会讲到系统优化,让系统在保证高正确性的同时,也能合理追求速度。

第三部分,分布式正确性及高可用。

复杂系统离不开案例分析和实战经验,这部分主要解决线上环境遇到的关键问题。以分布式系统环境为背景,重点讨论分布式一致性的存在条件、分布式共识算法、分布式的事件溯源架构、分布式数据方案的设计原理以及数据系统的实时动态分库等等。

另外,这部分还会探讨一个金融领域绕不开的话题——容灾,重点为你讲解跨机房实时容灾以及如何提高系统稳定性。


课程目录


特别放送

免费领取福利

限时活动推荐


订阅须知

💡 学习建议

  • 建议按照课程目录顺序学习,循序渐进掌握知识点
  • 每个章节配合实战练习,巩固所学内容
  • 遇到问题可在评论区交流,社区互助学习
  • 完成课程后尝试独立项目,检验学习成果

❓ 常见问题 FAQ

这个教程适合什么水平的学习者?

本教程从基础概念讲起,逐步深入到高级应用,适合零基础初学者到有一定经验的开发者。无论您是刚入门还是想提升技能,都能从中受益。

学习这个教程需要多长时间?

根据个人基础和每天学习时间不同,通常需要2-4周可以完成基础部分,深入掌握需要1-2个月的持续学习和实践。建议每天投入1-2小时系统学习。

学完后能达到什么水平?

完成本教程后,您将掌握微服务&架构的核心技术和最佳实践,能够独立开发实际项目,具备中级开发工程师的技术能力,为求职或晋升打下坚实基础。