Ohhnews

分类导航

$ cd ..
DZone Java原文

全球支付巨头如Stripe和PayPal如何利用Apache Kafka与Flink实现扩展

#支付处理#apache kafka#数据流#金融科技#可扩展性

Global Payments 将以 227 亿美元收购 Worldpay 的最新消息,再次将聚光灯投向了支付处理领域。此举整合了两家巨头,并标志着实时、全球支付基础设施的重要性日益增长。但在这一转变背后,有着更深层次的原因:数据流已成为现代支付系统的脊梁。

从 Stripe 99.9999% 的 Kafka 可用性,到 PayPal 每天流式传输超过万亿事件,再到 Payoneer 用数据流替代现有的消息代理,全球领先的支付处理商正围绕流技术重新设计其核心系统。甚至像 Worldline 这样开发了自己的 Apache Kafka 管理平台的公司,也使 Kafka 成为了其金融基础设施的核心。

支付处理商在一个每笔交易都必须在毫秒级内完成授权、路由、验证和结算的世界中运作。这些不仅仅是金融操作——它们是关键的实时数据管道。从欺诈检测和货币兑换到账本更新和合规检查,整个价值链都依赖于流式架构来实现无延迟运行。

这一变革凸显了数据流不仅是推动因素,更是构建快速、安全且智能的大规模支付体验的核心要求

什么是支付处理商?

支付处理商是一家在客户、商家和银行之间转移资金的金融科技公司。它验证并授权交易,连接卡网络,并确保各方之间的结算。

换句话说,它充当了驱动数字商务(包括线上和线下)的中间件。无论是在商店刷卡、通过移动钱包支付,还是进行国际电汇,通常都涉及支付处理商。

主要职责包括:

  • 验证支付凭证
  • 执行安全和欺诈检查
  • 将支付请求路由到正确的金融机构
  • 确认授权并处理资金结算

顶级支付处理商

基于交易量、全球覆盖范围和市场影响力,以下是目前一些最大的参与者:

  • FIS / Worldpay -- 专注企业级,全球覆盖
  • Global Payments -- 全渠道,商户服务
  • Fiserv / First Data -- 遗留系统集成,银行与零售商
  • PayPal -- 全球数字钱包和结账服务
  • Stripe -- API 优先,对开发者友好的平台
  • Adyen -- 面向大企业的统一商务
  • Block (Square) -- 专注中小企业,硬件 + 软件
  • Payoneer -- 跨境 B2B 支付
  • Worldline -- 强大的欧洲市场影响力

这些公司每一家都以巨大的规模运营,每天处理数百万笔交易。它们的基础设施必须是安全的、可靠的且实时的。这正是数据流发挥作用的地方。

金融服务背景下的支付处理商

支付处理商并非孤立运作。它们与广泛的系统集成:

  • 银行系统: 用于访问账户和结算资金
  • 卡网络: 如 Visa、Mastercard 和 Amex
  • B2B 应用: 如 ERP、POS 和电子商务平台
  • 金融科技服务: 包括借贷、保险和数字钱包

这意味着它们的系统必须支持实时消息传递、低延迟和容错能力。停机或错误可能意味着经济损失、客户流失,甚至是监管罚款。

为什么支付处理商使用数据流处理

传统的批处理在当今的支付生态系统中已不再适用。批处理存在 20 多个问题和挑战

金融服务必须对以下关键事件做出实时反应:

  • 支付授权
  • 可疑交易警报
  • 货币兑换请求
  • 基于 API 的微交易

在此背景下,通常通过 Confluent 部署的 Apache Kafka 和 Apache Flink 正在成为基础技术。

数据流平台能够实现事件驱动架构,其中每笔支付、客户交互或系统变更都被视为实时事件。该模型支持服务的解耦,意味着系统可以独立扩展和演进——这是关键任务环境中的一个基本特征。

Apache Kafka 和 Flink 为支付带来的好处

Apache Kafka 是现代支付平台事实上的脊梁,因为它支持金融交易的实时、关键任务性质。它与 Apache Flink 相结合,实现了能够满足当今金融科技景观需求的数据流架构。

主要好处包括:

  • 低延迟 -- 在毫秒级内处理事件
  • 高吞吐量 -- 每天处理数百万笔交易
  • 可扩展性 -- 轻松跨系统和区域扩展
  • 高可用性和故障转移 -- 确保全球正常运行时间和灾难恢复
  • 精确一次语义 -- 维护财务完整性并避免重复
  • 事件溯源 -- 跟踪每一个操作以进行审计和合规
  • 解耦服务 -- 支持模块化的、基于微服务的架构
  • 数据复用性 -- 一次流式传输,供多个团队和用例使用
  • 可扩展集成 -- 弥合现代 API 与遗留银行系统之间的鸿沟

在利益攸关的支付世界中,实时处理不再是竞争优势——它是核心要求。数据流提供了实现这一目标的基础设施。

Apache Kafka 不仅仅用于大数据分析。它能够在不牺牲性能或一致性的情况下进行事务处理。请查看完整的博客文章以获取详细的用例和架构见解:Apache Kafka 的分析与事务处理

支付处理商生态系统中的 Apache Kafka 数据流应用

让我们看看顶级支付处理商如何使用 Apache Kafka。

Stripe:利用 Apache Kafka 实现 99.9999% 的可用性

Stripe 是全球领先的互联网企业金融基础设施平台。它为数百万家公司——从初创公司到全球企业——提供支付、计费和金融运营支持。通过 Stripe 处理的每一笔交易都是关键任务,不仅对 Stripe 本身如此,对其依赖无缝、实时支付获取收入的客户也是如此。

Stripe 架构的核心在于 Apache Kafka,它作为金融事实来源。Stripe 的绝大多数服务都使用 Kafka,作为跨系统处理、路由和跟踪所有金融数据的脊梁。核心用例是 Stripe 的总账,它使用复式记账法对金融活动进行建模。该账本涵盖 Stripe 生态系统内的每一次资金流动,必须准确、完整且可实时观测。

Kafka 确保所有金融事件——从支付授权到结算和退款——都以精确一次语义进行处理。这保证了财务状态永远不会被多算、少算或重复,这在受监管的环境中至关重要。

Stripe 还集成了 Apache Pinot 作为实时 OLAP 引擎,直接从 Kafka 消费事件以进行即时分析。这支持了从操作仪表板到面向客户的报告的所有功能,而无需从离线批处理系统中拉取数据。

Stripe 最先进的 Kafka 部署之一支持 99.9999% 的可用性,内部称为“六个九”。这是通过定制的多集群代理层实现的,该层在全球范围内路由生产者和消费者。代理系统确保即使在集群中断的情况下也能实现高可用性,允许维护和升级而对实时系统零影响。这使得关键服务(如 Stripe 的“收费路径”,即交易的端到端流程)能够在所有条件下保持完全运行。

Stripe 对 Kafka 的使用说明了数据流平台如何不仅作为管道,而且作为一个基础的、高可用的、全球分布的金融事实层。

PayPal:每天流式传输超过万亿事件

PayPal 是全球使用最广泛的数字支付平台之一,为数亿用户和企业提供服务。作为全球支付处理商,其系统必须快速、可靠且安全——尤其是当每笔交易都影响跨越国界、货币和监管框架的真实资金流动时。

Apache Kafka 在实现 PayPal 的实时数据流基础设施方面发挥着核心作用。Kafka 支持一些最关键的工作负载,包括使用 AI/ML 模型的欺诈检测、用户活动跟踪、风险与合规以及应用程序健康监控。这些不是可选功能——它们是 PayPal 支付生态系统完整和安全的基础。

在黑色星期五或网络星期一等高峰期,该平台每天处理超过 1 万亿条 Kafka 消息。Kafka 使 PayPal 能够实时检测欺诈,即时响应风险事件,并保持跨服务的持续可观测性。

PayPal 还利用 Kafka 将分析延迟从数小时缩短到数秒。将来自 Kafka 的数据流式传输到 Google BigQuery 等工具中,使公司能够生成实时洞察,以支持支付路由、用户体验和运营决策。

作为支付处理商,PayPal 无法承受停机或延迟。Kafka 确保了低延迟、高吞吐量和实时响应能力,使其成为保持 PayPal 全球支付平台安全、合规和始终可用的关键脊梁。

Payoneer:迁移至 Kafka 以实现可扩展的事件驱动支付

Payoneer 是一家专注于跨境 B2B 交易的全球支付处理商。它使自由职业者、企业和在线卖家能够从 200 多个国家/地区发送和接收付款。在这种规模下运营不仅需要金融合规性和灵活性,还需要强大、实时的数据基础设施。

当 Payoneer 从单体系统转向微服务时,其遗留的事件驱动设置面临严重限制,该设置依赖于 RabbitMQ、Apache NiFi 和定制的路由逻辑。这些技术支持基本的异步通信和变更数据捕获(CDC),但随着服务数量和数据量的增长,它们很快成为瓶颈。NiFi 无法跟上 CDC 的吞吐量,RabbitMQ 无法扩展以支持多消费者设置,整个架构导致服务之间紧密耦合。

为了解决这些挑战,Payoneer 使用 Apache Kafka 和 Debezium 重新设计了其内部事件总线。这一转变用 Kafka 主题取代了队列,解锁了高吞吐量、多消费者支持、数据回放和模式强制执行等关键好处。应用程序事件现在直接发布到 Kafka 主题,而来自 SQL 数据库的 CDC 数据则使用 Debezium Kafka 连接器进行流式传输。

通过将生产者与消费者解耦并消除了对复杂的基于规则的队列路由的需求,Kafka 实现了更清洁、更有弹性的事件驱动架构。它还支持高级用例,如事件过滤、丰富和实时分析。

对于 Payoneer 来说,这次迁移不仅仅是技术升级——这是一个基础性的转变,使公司能够安全扩展,在服务之间可靠通信,并实时处理金融事件。Kafka 现在是 Payoneer 现代支付基础设施的关键脊梁。

Worldline:构建企业级 Kafka 管理平台

Worldline 是欧洲领先的支付服务提供商之一,每年在银行、零售和移动领域处理数十亿笔交易。在这个高度监管和竞争激烈的环境中,实时可靠性和可观测性至关重要。这些要求使 Apache Kafka 成为 Worldline 基础设施的战略组成部分。

虽然 Worldline 没有公开披露具体的支付相关用例,但从其公共 GitHub 项目、技术文章和招聘信息中可以清楚地看到公司对 Kafka 的投资。Kafka 已被多个团队和项目采用,为支持 Worldline 作为全球支付处理商角色的异步处理、数据集成和事件驱动架构提供支持。

表明 Kafka 在 Worldline 重要性的最强有力指标之一是其自己的 Kafka Manager 工具的开发。该工具内部构建,专为满足企业需求而定制,允许团队更高效、更安全地监控、管理和排查 Kafka 集群故障——这在 PCI 监管环境中至关重要。该工具的高级功能,如偏移量跟踪、消息检查和集群范围的配置管理,反映了支付行业所需的运营成熟度。

一篇 2021 年的博客文章很好地概述了其动机,并包含了一个有趣的(尽管有些过时的)比较,解释了 Worldline 构建自己的 Kafka UI 的原因。

另一个值得注意的项目是 wkafka,它是 Kafka 库的一个封装器,旨在初始化和运行 Go 编程语言中的微服务。Worldline 继续招聘 Kafka 工程师和开发人员,这表明持续投资于扩展和优化其流基础设施。

即使没有详细的公开的、以用例为重点的故事,信息也很明确:Kafka 对于 Worldline 能够大规模提供安全、实时的支付服务至关重要。

超越支付:数据流驱动的支付处理商增值服务

支付处理仅仅是个开始。数据流支持越来越多的高价值服务:

  • 欺诈预防: 利用历史和流特征进行实时评分
  • 分析: 从实时仪表板获得即时业务洞察
  • 嵌入式金融: 与电子商务、拼车或 SaaS 计费等第三方平台集成
  • 营运资金贷款: 根据交易历史在流内进行信贷决策

这些服务不仅增加了收入,还有助于支付处理商留住客户并建立生态锁定。

展望未来:物联网、AI 和代理系统

支付处理的未来正由以下因素塑造:

  • 物联网支付: 汽车、智能设备和可穿戴设备自动触发支付
  • AI 和 GenAI: 管理订阅、检测多收费和实时协商费用的个人理财代理
  • 代理式 AI 系统: 代表企业管理开票、对账和现金流,将事件流式传输到 Kafka 并输出到各种 API

数据流是这些创新的基础。没有实时数据,AI 就无法做出明智的决策,物联网也无法在边缘与支付系统交互。

现代支付不仅仅是资金的流动——更是数据的流动。

支付处理商是公司如何通过处理数据流而不仅仅是数据库中的行来创造价值的领先例子。数据流平台不再仅仅是一个工具;它是实时业务战略推动者。

随着金融科技领域的整合和不断发展,那些投资于事件驱动架构的公司将在创新、客户体验和运营敏捷性方面占据优势。