多业务线亿级体量,携程是怎么做账务中台的(1)

在线体验各类最新模型,更有模型 免费Token 额度领取!
立即体验
简介: 多业务线亿级体量,携程是怎么做账务中台的


本文为联合撰文,作者团队负责携程集团支付账务系统、消费金融账务系统、清结算和对账等工作的的开发、设计和运维工作。


   

01


   

前言


原先携程内部的各账务系统都是随着自身的业务发展而建立起来的,其中有些共同的东西,但也存在着不少差异。但其对底层业务的抽象是统一的,都可以抽象为:账户开立、记账、稽核。为了系统开发、运维的简便性,也为了更好的为前台业务提供支持,我们计划实施账务中台系统,从而做到账务系统的:

1)敏捷:快速的适应业务需求的变化,满足外部快速变化的需求,实现业务的敏捷。2)解耦:建立功能独立的系统,避免因为一个功能的修改而影响很多方面,降低功能的耦合度。3)复用:对一些公共组件的复用,提高开发效率,避免重复建设,使得数据和流程都可以得到管控。

 

   

02


   

账务中台之路-基础篇


1、系统概述


1)背景


账务系统从2014年开始一期建设,先后经历了两次大的技术架构升级。

一期:

账务组刚成立的时候,携程的JAVA技术栈尚未完善。

技术上我们是首批试点使用JAVA的小组,使用的分布式RPC框架是Zeroc ICE,它可以支持多语言,通过slice文件生成代码,性能也比较好,所以当初选型用了这个。消息队列用的RABBITMQ,缓存用的REDIS。这些集群都是自运维的。

业务上,一期的业务只支持单用户单账户的模式,交易支持充值、支付、退款、预授权类(预授权冻结,预授权撤销,预授权完成,预授权完成撤销)、提现、转账,接口都是基于业务接口独自开发的。
系统业务架构图如下:


二期:


随着携程JAVA技术栈的完善,二期主要针对JAVA技术栈进行了升级,放弃了自运维的集群,使用了携程JAVA体系,包括SOA,qconfig,qmq,qshecdule等技术。业务上增加了会计系统和日终的实现。


系统业务架构图如下:


原有的账务核心系统存在以下问题:

1)抽象不足:对业务规则抽象不够,如果新增业务需要编码实现2)隔离不够:系统不同业务的系统流量、数据没有隔离,存在某一业务有问题,影响全局的风险3)降级策略:不支持4)扩容困难

基于以上问题,我们设计并实现了新的统一账务平台。

2)目标


针对旧系统的不足,我们确定统一账务平台的目标:

1)抽象2)隔离3)易扩容4)配置化5)支持多机构多币种

2、系统架构与简介

统一账务系统旨在建立一套立足于携程集团之下的高可用,易扩展,业务可定制的账务系统。系统包括场景码系统,账务前置系统,账务核心系统,账户管理系统,会计系统,异步系统,job系统,日志系统。各个系统之间通过dubbo进行服务拆分解耦。

系统业务架构图如下:

  • 前置系统:账务的业务处理系统,主要负责对上游业务系统的对接,完整账户的拆分等工作。
  • 账务核心系统(原子系统):主要负责账户记账,记录对商户、用户、内部户等客户账的动账及明细。
  • 管理系统:对外提供商户、用户、内部户的管理服务,包括创建、查询、状态冻结、状态解冻等服务。
  • 会计系统:采用复式记账法根据分录规则对发生的交易进行记录,来表示资金的流转。
  • 基础服务系统:对外提供科目、分录、交易码等基础配置的查询服务。
  • 日终系统:对记账原子和会计系统数据进行稽核,完成数据校验工作。




相关文章
|
7月前
|
存储 缓存 JSON
新京报 item_get - 获取详情数据接口对接全攻略:从入门到精通
新京报item_get接口是获取其权威新闻详情的核心工具,支持通过ID或URL提取全文、作者、传播数据等,适用于舆情监测、资讯聚合与学术研究。本攻略详解接口调用、签名生成、权限配置及避坑指南,助力开发者高效稳定对接,合规利用主流媒体数据。
|
存储 设计模式 监控
快速定位并优化CPU 与 JVM 内存性能瓶颈
本文介绍了 Java 应用常见的 CPU & JVM 内存热点原因及优化思路。
1373 166
|
SQL 运维 算法
链路诊断最佳实践:1 分钟定位错慢根因
本文聚焦于线上应用的风险管理,特别是针对“错”(程序运行不符合预期)和“慢”(性能低下或响应迟缓)两大类问题,提出了一个系统化的根因诊断方案。
1254 103
|
人工智能 监控 安全
从 DeepSeek 敏感信息泄露谈可观测系统的数据安全预防
探讨了 SLS 中增强数据安全的几种方式:权限精细化管控有效减少了潜在安全风险;接入层脱敏技术阻止敏感数据落库,提升了隐私保护;StoreView 字段集控制通过限制查询数据范围,降低数据泄露损害。智能监控系统提供实时监测,快速识别并阻断异常拖库行为,为企业提供了迅速响应和抵御威胁的能力。
|
Swift
DeepSeek开源Janus-Pro多模态理解生成模型,魔搭社区推理、微调最佳实践
DeepSeek开源Janus-Pro多模态理解生成模型,魔搭社区推理、微调最佳实践
793 1
|
消息中间件 监控 数据可视化
ROS Terraform 托管服务与原生 Terraform 对比:选择最适合你的 IaC 工具
本文详细介绍了阿里云资源编排服务(ROS)提供的Terraform托管服务,对比了ROS与Terraform的原生能力,帮助用户根据需求选择合适的IaC工具。
1187 54
|
缓存 SpringCloudAlibaba NoSQL
Spring Boot多级缓存实现方案
整合redis和caffeine实现多级缓存,解决上面单一缓存的痛点,从而做到相互补足
1599 0
|
搜索推荐
Edge——如何屏蔽CSDN搜索结果
Edge——如何屏蔽CSDN搜索结果
677 1
Edge——如何屏蔽CSDN搜索结果
|
网络协议 Linux 开发工具
centOS系统配置静态ip
centOS系统配置静态ip
centOS系统配置静态ip
|
分布式计算 Cloud Native 安全
数据中台(01)- 全面了解数据中台
数据中台(01)- 全面了解数据中台
4846 1