支付宝系统架构参考(架构图)

2023-10-31

转自微信公众号支付圈

支付宝是中国支付行业的一个标兵,无论是业务能力还是产品创都引领者中国支付行业的前沿,作为支付业务的基础系统的复杂性和稳定性是支付业务是否能够及时快速安全处理的根本,在此收集了支付宝的系统架构图包含:清算 客服  处理  资金 财务 等等 供其他支付公司进行参考!

本文为网络收集信息,虽然不属于支付宝的最新系统架构信息,但是作为支付行业的龙头,架构系统依然值得学习!

dbb8a56a9beaa42163945f3c05fd481e.jpeg

c985bee46c50b155071e826e7529b71c.jpeg

2b7ac5064cb6857cf4cd1d0b77ae33ef.jpeg

ce49921cf1960917b3ee364d181a4759.jpeg

450a65592b91149339efed0c55a98f8f.jpeg

5bad8028e44bfc94eb6932a319e13812.jpeg

cb9a411472def92e643526eb81e6e9fb.jpeg

8e7ee54a9ef81cfe5e79626e4be08558.jpeg

eb99c70ea0cdd68b20468b58fe000573.jpeg

f6effd7334b8946c0456cd27e5986abc.jpeg

4335281a280b394b92731c48469607e7.jpeg

df5921e40dddeecd8a33e458d389d048.jpeg

c662ccaf42995690b3d98a313d057f3e.jpeg

e696ed6fc6433a03a1c135b515ebd78e.jpeg

40d47c6e054eb8f28c1f40a8480ad153.jpeg

8e2a408e45ac540f41b7279c50de0243.jpeg

5c8383c9ece7780aacd279a931088208.jpeg



支付宝的开源分布式消息中间件--Metamorphosis(MetaQ)

Metamorphosis (MetaQ) 是一个高性能、高可用、可扩展的分布式消息中间件,类似于LinkedIn的Kafka,具有消息存储顺序写、吞吐量大和支持本地和XA事务等特性,适用于大吞吐量、顺序消息、广播和日志数据传输等场景,在淘宝和支付宝有着广泛的应用,现已开源。

Metamorphosis是淘宝开源的一个Java消息中间件。关于消息中间件,你应该听说过JMS规范,以及一些开源实现,如ActiveMQ和HornetQ等。Metamorphosis也是其中之一。

Metamorphosis的起源是我从对linkedin的开源MQ--现在转移到apache的kafka的学习开始的,这是一个设计很独特的MQ系统,它采用pull机制,而不是一般MQ的push模型,它大量利用了zookeeper做服务发现和offset存储,它的设计理念我非常欣赏并赞同,强烈建议你阅读一下它的设计文档,总体上说metamorphosis的设计跟它是完全一致的。但是为什么还需要meta呢?

简单概括下我重新写出meta的原因:

  • Kafka是scala写,我对scala不熟悉,并且kafka整个社区的发展太缓慢了。

  • 有一些功能是kakfa没有实现,但是我们却需要:事务、多种offset存储、高可用方案(HA)等

Meta相对于kafka特有的一些功能:

  • 文本协议设计,非常透明,支持类似memcached stats的协议来监控broker

  • 纯Java实现,从通讯到存储,从client到server都是重新实现。

  • 提供事务支持,包括本地事务和XA分布式事务

  • 支持HA复制,包括异步复制和同步复制,保证消息的可靠性

  • 支持异步发送消息

  • 消费消息失败,支持本地恢复

  • 多种offset存储支持,数据库、磁盘、zookeeper,可自定义实现

  • 支持group commit,提升数据可靠性和吞吐量。

  • 支持消息广播模式

  • 一系列配套项目:python客户端、twitter storm的spout、tail4j等。

因此meta相比于kafka的提升是巨大的。meta在淘宝和支付宝都得到了广泛应用,现在每天支付宝每天经由meta路由的消息达到120亿,淘宝也有每天也有上亿的消息量。

Meta适合的应用:

  • 日志传输,高吞吐量的日志传输本来就是kafka的强项

  • 消息广播功能,如广播缓存配置失效。

  • 数据的顺序同步功能,如mysql binlog复制

  • 分布式环境下(broker,producer,consumer都为集群)的消息路由,对顺序和可靠性有极高要求的场景。

  • 作为一般MQ来使用的其他功能

总体结构:

3c860c154e62ed8d49a3fb8e8b979f63.jpeg

内部结构:

95a109b7962f675c6dec3521f934775f.jpeg

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

支付宝系统架构参考(架构图) 的相关文章

  • BSN区块链服务网络底十六章

    1 1 简介 服务网络的设计和建设理念完全借鉴互联网 互联网是由TCP IP协议将所有数据中心连接而形成的 服务网络是通过建立一套区块链运行环境协议将所有数据中心连接而组成 与互联网一样 服务网络也是跨云服务 跨门户 跨底层框架的全球性基础
  • 最详细的Java入门到入土完整学习教程,学Java先收藏了!

    目录 Java是一门广泛应用于软件开发的高级编程语言 它以其跨平台性 面向对象的特性和丰富的生态系统而受到广大开发者的喜爱 本教程将带您从Java的入门阶段一直深入到精通的水平 涵盖了40种常用的Java开发技术栈 并结合中国的应用场景给出
  • RFID系统在物流仓储中的应用

    RFID系统是一种无线识别技术 最近成为物流仓储行业的热门话题 本文将介绍RFID系统在物流仓储中的应用 包括如何使用RFID标签进行物流管理 如何使用RFID技术提高仓库的安全性 并细述RFID技术在物流仓储中的优势 除此之外 本文还会探
  • 大规模网络爬虫系统架构设计 - 云计算和Docker部署

    在大规模网络爬虫系统中 合理的架构设计和高效的部署方式是确保系统稳定性和可扩展性的关键 本文将介绍如何利用云计算和Docker技术进行大规模网络爬虫系统的架构设计和部署 帮助你构建高效 可靠的爬虫系统 1 架构设计原则 在设计大规模网络爬虫
  • 架构师日记-深入理解软件设计模式

    作者 京东零售 刘慧卿 一 设计模式与编程语言 1 1 什么是设计模式 设计模式 Design pattern 由软件开发人员在软件开发中面临常见问题的解决方案 是经过长时间的试验积累总结出来的 它使设计更加灵活和优雅 复用性更好 从实用的
  • 嵌入式Hypervisor了解

    https blog csdn net bbc955625132551 article details 71597863 hypervisor 的核心要素之一是页映射器 它将硬件指向特定操作系统 来宾或 hypervisor 的页 最后 需
  • 浅谈tidb事务与MySQL事务之间的区别

    MySQL是我们日常生活中常见的数据库 他的innodb存储引擎尤为常见 在事务方面使用的是扁平事务 即要么都执行 要么都回滚 而tidb数据库则使用的是分布式事务 两者都能保证数据的高一致性 但是在实现方式上是不一样的 我们先来看看MyS
  • 系统架构设计专业技能 · 软件工程之系统分析与设计

    系列文章目录 系统架构设计专业技能 软件工程 一 系统架构设计师 系统架构设计高级技能 软件架构概念 架构风格 ABSD 架构复用 DSSA 一 系统架构设计师 系统架构设计高级技能 系统质量属性与架构评估 二 系统架构设计师 系统架构设计
  • Asahi Linux for M1 Apple Silicon 首次发布 Alpha 版

    Apple Silicon 的基于 Arch 的发行版只能用于更轻松地安装 OpenBSD Asahi Linux已经为Apple M1 M1 Pro或M1 Max设备上的用户发布了其第一个公共alpha版本 该发行版基于Arch Linu
  • 软件系统设计-15-架构设计

    1 设计架构 Design Architecture 1 1 设计策略 Design Strategies Abstraction Generate Test Decomposition Reusable Elements Iteratio
  • 系统架构设计高级技能 · 软件可靠性分析与设计

    系列文章目录 系统架构设计高级技能 软件架构概念 架构风格 ABSD 架构复用 DSSA 一 系统架构设计师 系统架构设计高级技能 系统质量属性与架构评估 二 系统架构设计师 系统架构设计高级技能 软件可靠性分析与设计 三 系统架构设计师
  • 系统架构设计高级技能 · Web架构设计

    现在的一切都是为将来的梦想编织翅膀 让梦想在现实中展翅高飞 Now everything is for the future of dream weaving wings let the dream fly in reality 点击进入系
  • 从计组和操作系统详解IO控制方式

    IO控制方式 实际上IO在操作系统和计组里面都有讲到 这两个内容各有侧重 又有很大的重合 这里就整理一下 操作系统里面就讲了一下基本的过程 计组还讲了各个接口电路 1 直接程序控制方式 直接程序控制方式由用户进程直接控制主存或 CPU 和外
  • 系统架构设计专业技能 · 信息系统基础

    系列文章目录 系统架构设计专业技能 网络技术 三 系统架构设计专业技能 系统安全分析与设计 四 系统架构设计师 系统架构设计高级技能 软件架构设计 一 系统架构设计师 系统架构设计高级技能 系统质量属性与架构评估 二 系统架构设计师 系统架
  • 架构师之道 秒杀系统优化思路

    本文曾在 架构师之路 上发布过 近期支援Qcon AS大会 在微信群里分享了该话题 故对原文进行重新整理与发布 一 秒杀业务为什么难做 1 im系统 例如qq或者微博 每个人都读自己的数据 好友列表 群列表 个人信息 2 微博系统 每个人读
  • Rings‘ Power,性能“世界第一”的Web I/O框架

    UringNet设计的思路和参考 在2019年 从Linux内核5 1开始 引入了io uring这样的异步框架 io uring的设计非常精巧 经过验证 其性能极其强悍 在文件读写的领域已经证明了其巨大的价值 很多数据库系统的底层已经引入
  • 系统架构主题之七:基于架构的软件设计方法及应用

    1 基于架构的软件设计方法概念 关键词 ABSD 自顶向下 递归迭代 与需求同步 设计元素 视角与视图 用例和质量场景 预期和非预期等 总的来讲 ABSD方法分为如下六个大的阶段 1 体系结构需求阶段 相比传统软件系统设计 架构设计在需求获
  • 深入MySQL查询过程底层原理,我找到了MySQL查询慢的根本原因!

    V xin ruyuanhadeng获得600 页原创精品文章汇总PDF 前言 接上一节 那么 一次查询的全过程是什么样的呢 这个时候 我们通过各种百度和Google 然后加上自己的理解 终于搞明白了MySQL一次查询的全过程了 首先 用户
  • 系统架构设计师之软件架构风格

    系统架构设计师之软件架构风格
  • 如何设计一个高并发系统?

    所谓高并发系统 是指能同时处理大量并发请求 并及时响应 从而保证系统的高性能和高可用 那么我们在设计一个高并发系统时 应该考虑哪些方面呢 1 搭建集群 如果你只部署一个应用 只部署一台服务器 那抗住的流量请求是非常有限的 并且 单体的应用

随机推荐