金融场景下商户回调通知架构思考

简介: 在金融场景API接口,大家都会看到一个特殊的字段,叫做notifyUrl,商户或用户回调链接,这个notifyUrl用户接受异步支付状态应答,在各种支付场景中非常重要的。下面我们就讲下支付公司如何去设计这个notifyUrl来保证请求必然到达的。

首先,我们来看下,通常在支付形态的API接口中,使用都是Https协议+RSA证书体系,来完成整个交易的安全,那么这个notifyUrl必然也是这个协议和安全体系之下的。

其次,notifyUrl通常情况下由商户或用户提供,并且在支付接口的传入。那么问题来了,回调接口对于提供接口的一方是不可控制的,这些回调的接口的质量参差不齐,来源请求非常多,各自还需要做相互不影响,并发量跟正向支付请求同等量可能还要超过。

接下来我们来考虑如何设计一个回调请求notiflyUrl的中间件,来方便支付场景中非常重要的一环。

整个系统分为核心处理和商户回调请求业务管控。

核心处理:
代理接收层:主要使用同步EDAS RPC通讯框架,业务系统通过将需要回调的请求发送过来。再通过深度业务路由决策,分发到同步请求处理层或异步请求处理层。
同步请求处理层:处理即时回调的场景,如:扫码、网银等。
异步请求处理层:处理批量回调的场景,如:代扣、代发、充值等
补偿重试处理层:上面两类请求在指定重试范围内,通知失败,进入补偿重试。

业务管控:
回调商户黑白名单、URL管控、证书管控、路由计算、控台重发等。

整体架构图如下:
商户通知系统.png
总结:
为了保证性能和优先URL通知到达,采用了先请求URL,再落库的方式(前提业务能自主补偿)。
通过同步和异步两层设计,异步中再采用队列分散型设计,再通过精准的路由策略计算,达到商户或更细粒度的业务操作维度的通知相互不影响。
发送者上面需要考虑Https协议支持,标准TLS1.0~1.2或更高,加密通讯算法上也需要更多支撑,JDK安全限制需要考虑。
外网出口再采用两类方式,一类专线管控类,通过正向代理统一出口(适合银行类通知),一类直接外网请求。

目录
相关文章
|
10月前
|
关系型数据库 MySQL 分布式数据库
Super MySQL|揭秘PolarDB全异步执行架构,高并发场景性能利器
阿里云瑶池旗下的云原生数据库PolarDB MySQL版设计了基于协程的全异步执行架构,实现鉴权、事务提交、锁等待等核心逻辑的异步化执行,这是业界首个真正意义上实现全异步执行架构的MySQL数据库产品,显著提升了PolarDB MySQL的高并发处理能力,其中通用写入性能提升超过70%,长尾延迟降低60%以上。
|
10月前
|
消息中间件 存储 大数据
阿里云消息队列 Kafka 架构及典型应用场景
阿里云消息队列 Kafka 是一款基于 Apache Kafka 的分布式消息中间件,支持消息发布与订阅模型,满足微服务解耦、大数据处理及实时流数据分析需求。其通过存算分离架构优化成本与性能,提供基础版、标准版和专业版三种 Serverless 版本,分别适用于不同业务场景,最高 SLA 达 99.99%。阿里云 Kafka 还具备弹性扩容、多可用区部署、冷热数据缓存隔离等特性,并支持与 Flink、MaxCompute 等生态工具无缝集成,广泛应用于用户行为分析、数据入库等场景,显著提升数据处理效率与实时性。
|
人工智能 运维 监控
云卓越架构:企业稳定性架构体系和AI业务场景探秘
本次分享由阿里云智能集团公共云技术服务部上海零售技术服务高级经理路志华主讲,主题为“云卓越架构:企业稳定性架构体系和AI业务场景探秘”。内容涵盖四个部分:1) 稳定性架构设计,强调高可用、可扩展性、安全性和可维护性;2) 稳定性保障体系和应急体系的建立,确保快速响应和恢复;3) 重大活动时的稳定重宝策略,如大促或新业务上线;4) AI在企业中的应用场景,包括智能编码、知识库问答、创意广告生成等。通过这些内容,帮助企业在云计算环境中构建更加稳定和高效的架构,并探索AI技术带来的创新机会。
|
NoSQL Java 数据处理
基于Redis海量数据场景分布式ID架构实践
【11月更文挑战第30天】在现代分布式系统中,生成全局唯一的ID是一个常见且重要的需求。在微服务架构中,各个服务可能需要生成唯一标识符,如用户ID、订单ID等。传统的自增ID已经无法满足在集群环境下保持唯一性的要求,而分布式ID解决方案能够确保即使在多个实例间也能生成全局唯一的标识符。本文将深入探讨如何利用Redis实现分布式ID生成,并通过Java语言展示多个示例,同时分析每个实践方案的优缺点。
581 8
|
网络协议 数据挖掘 5G
适用于金融和交易应用的低延迟网络:技术、架构与应用
适用于金融和交易应用的低延迟网络:技术、架构与应用
873 5
|
SQL 存储 分布式计算
大数据-157 Apache Kylin 背景 历程 特点 场景 架构 组件 详解
大数据-157 Apache Kylin 背景 历程 特点 场景 架构 组件 详解
342 9
|
边缘计算 监控 自动驾驶
揭秘云计算中的边缘计算:架构、优势及应用场景
揭秘云计算中的边缘计算:架构、优势及应用场景
|
6月前
|
Cloud Native Serverless API
微服务架构实战指南:从单体应用到云原生的蜕变之路
🌟蒋星熠Jaxonic,代码为舟的星际旅人。深耕微服务架构,擅以DDD拆分服务、构建高可用通信与治理体系。分享从单体到云原生的实战经验,探索技术演进的无限可能。
微服务架构实战指南:从单体应用到云原生的蜕变之路
|
弹性计算 API 持续交付
后端服务架构的微服务化转型
本文旨在探讨后端服务从单体架构向微服务架构转型的过程,分析微服务架构的优势和面临的挑战。文章首先介绍单体架构的局限性,然后详细阐述微服务架构的核心概念及其在现代软件开发中的应用。通过对比两种架构,指出微服务化转型的必要性和实施策略。最后,讨论了微服务架构实施过程中可能遇到的问题及解决方案。

热门文章

最新文章