补上《百图解码支付系统设计与实现》专栏的发刊词。
在互联网支付行业摸爬滚打十余年,曾经从网上读过不少优秀的文章,帮我少走了很多弯路,也加速了我的成长之路。一直以来,也想把自己的一些经验总结出来回馈给社区,但因为各种原因都没有动笔。当前市场上已经有很多讲解支付相关的优秀书籍,但我近期尝试写了几篇后,发现相比市面上的书籍或文章,我能够把复杂的概念简化表达,也能深入到业务和技术的细节,于是下定决心要付诸行动。
为什么选择耗时且复杂的图解方式?因为“一图胜千言”。图解能够直观展现复杂概念,使读者更易理解和记忆。虽然绘图对我而言是一大挑战,需要极强的抽象和表达能力,但我认为这种方式对于阐述支付系统的设计和实现至关重要。有时,我可能用一个小时就能撰写几千字的文章,但为了一幅能准确表达意思的图,却要花费更多的时间和精力。
这一系列文章主要面向学生、编程新手以及对支付领域好奇的专业人士。我希望通过图解示例和通俗易懂的方式,从支付领域的基本概念开始,逐步深入讲解支付系统的核心流程和技术实现。目标是让复杂的支付技术变得简单易懂。此外,文章中的设计思路和方法论同样适用于其他领域,如状态机设计、分布式环境下的流量控制、架构设计思路等。
专栏将主要围绕一个虚拟的支付系统进行讲解。内容预计包括:专业术语解读、支付系统概述、产品和系统架构、核心业务逻辑、各核心子系统的设计,以及一些专项技术课题。我将以实战经验为主线介绍这些内容,最大的目标就是希望能启发读者:“原来还可以这样用”,或者“原来如此”。
所撰写的内容主要基于我个人的经验总结,并以实战为导向,但内容不会与任何特定公司的支付系统直接相关。同时,我将努力使文章内容浅显易懂,但毕竟支付是一个高度专业的领域,难以涵盖所有细节。因此,我建议有兴趣的读者也多参考其他优秀的资料和文献。
如果读者在阅读过程中发现任何不准确或需要改进的地方,欢迎通过留言、私信、邮件(yinmo_sc@qq.com)等方式反馈给我,我将及时更新内容,避免误导后续读者。
欢迎大家关注我的公众号,账号与我的笔名相同。另外因为支付领域比较专业,所以还创建了一个学习讨论群,有兴趣的读者可通过私信联系我加入。
通过这个专栏,我期待能够帮助读者更好地理解支付系统的设计与实现,实现我“回馈社区”的初心。希望我的努力能够为大家在支付技术和业务的学习及实践中带来帮助。
全部写完后考虑出个电子版本的书或合集(PDF格式)共享给大家。精力允许的情况下,再尝试结合所写内容发一些讲解视频,可以讲解或讨论更多的细节。
下面是专栏大纲,后面可能会根据大家的反馈有一些微调。
1.前言
我为什么要写《百图解码支付系统设计与实现》专栏及专栏大纲(完成)
2.术语
支付行业黑话:支付相关必知术语一网打尽(完成)
3.在线支付系统概要
跟着图走,学支付:在线支付系统设计的图解教程(完成)
4.核心业务与流程
支付:如何从用户账户扣钱到平台账户
退款:如何从平台账户扣钱到用户账户
清算:外部机构如何把钱给到平台
结算:如何把钱从平台结算给商户
充值:用户如何把钱充值到平台的个人账户
转账:用户账户之间如何转账
提现:用户如何把钱从平台账户转出去
外汇:跨币种支付怎么结算
5.各核心子域设计
【收单结算】
图解收单平台:打造商户收款的高效之道(完成)
图解结算平台:准确高效给商户结款(完成)
图解拒付平台:如何应对用户的拒付(完成)
【收银支付】
图解收银台:支付系统承上启下的关键应用(完成)
图解支付引擎:资产流动的枢纽(完成)
【商户网关】
【渠道网关】
图解渠道网关:不只是对接渠道的接口(一)(完成)
图解渠道网关:不只是对接渠道的接口(二)
图解报文网关:
图解文件网关:
【商服中心】
【会员中心】
【账务中心】
【会计中心】
【对账平台】
【计收费平台】
【风控平台】
【额度中心】
【产品中心】
【密钥中心】
6.专业课题
【业务ID生成规则】
交易流水号的艺术:掌握支付系统的业务ID生成指南(完成)
【支付安全】
揭密支付安全:为什么你的交易无法被篡改(完成)
金融密语:揭秘支付系统的加解密艺术(完成)
【状态机设计】
支付系统的心脏:简洁而精妙的状态机设计与核心代码实现(完成)
【幂等设计】
避免重复扣款:分布式支付系统的幂等性原理与实践(完成)
【日志规范设计】
支付系统日志设计完全指南:构建高效监控和问题排查体系的关键基石(完成)
【流控】
精确掌控并发:固定时间窗口算法在分布式环境下并发流量控制的设计与实现(完成)
精确掌控并发:滑动时间窗口算法在分布式环境下并发流量控制的设计与实现(完成)
精确掌控并发:漏桶算法在分布式环境下并发流量控制的设计与实现
精确掌控并发:令牌桶算法在分布式环境下并发流量控制的设计与实现
削峰填谷:分布式消息中间件在分布式环境下并发流量控制的应用
流量控制与熔断利器:Sentinel介绍
分布式环境下流控技术汇总
【分库分表】
【多活】
【资损防控】
【监控核对告警】
【重复支付与重复退款】
【支付失败重试与退款失败重试】
【渠道路由】
【渠道开关】
【多线程与线程池】
【设计模式应用】