干货 | 多业务线亿级体量,携程是怎么做账务中台的

携程面试:100 亿分库分表 如何设计? 核弹级 16字真经, 让面试官彻底 “沦陷”,当场发offer! 携程面试:100 亿分库分表 如何设计? 核弹级 16字真经, 让面试官彻底 “沦陷”,当场发offer! 阅读详情

作者简介

 

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

一

一、前言

 

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

1)敏捷:快速的适应业务需求的变化,满足外部快速变化的需求,实现业务的敏捷。

2)解耦:建立功能独立的系统,避免因为一个功能的修改而影响很多方面,降低功能的耦合度。

3)复用:对一些公共组件的复用,提高开发效率,避免重复建设,使得数据和流程都可以得到管控。

  

一

二、账务中台之路-基础篇

 

 

2.1 系统概述

2.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 目标

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

1)抽象

2)隔离

3)易扩容

4)配置化

5)支持多机构多币种

 

2.2 系统架构与简介

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

系统业务架构图如下:

  • 前置系统:账务的业务处理系统,主要负责对上游业务系统的对接,完整账户的拆分等工作。

  • 账务核心系统(原子系统):主要负责账户记账,记录对商户、用户、内部户等客户账的动账及明细。

  • 管理系统:对外提供商户、用户、内部户的管理服务,包括创建、查询、状态冻结、状态解冻等服务。

  • 会计系统:采用复式记账法根据分录规则对发生的交易进行记录,来表示资金的流转。

  • 基础服务系统:对外提供科目、分录、交易码等基础配置的查询服务。

  • 日终系统:对记账原子和会计系统数据进行稽核,完成数据校验工作。

2.3 系统设计


2.3.1 基础组件设计


2.3.1.1 日志组件

我们日志进行logger输出,会碰到以下的痛点:

1)我们经常会对方法的入参,出参及异常进行日志打印,还要把tag写入clog和ES,手写的话工作量巨大。

2)有些日志需要脱敏处理,比如手机号、身份证号、卡号,不能把明文输出到日志。

3)logger目前只支持抛公司的logger日志平台,部门想自定义日志查询分析工具比较困难。

所以在设计统一账务中台化的工程中,进行了日志组件的设计:

1)统一使用高性能的log4j2替代logback;

2)通过spring aop和annotation,支持方法入参、出参、异常日志的自动打印;

3)支持clog和es的tag的配置,可以从参数中获取,并通过log4j2的ThreadContext打入本地线程,线程使用过程中tag共享,代码如下所示:

4)支持配置脱敏规则,进行敏感信息的脱敏处理;

5)同步抛公司的clog和cat,异步抛kafka,异步接受程序进行ETL处理,抛部门自己的日志系统(比如鹰眼系统,hive日志分析系统);

6)抛kafka时,对于原始报文进行apache arvo压缩处理,减少传输带宽;

7)支持原生API,可以手工打tag和脱敏处理。

       

流程图如下:

2.3.1.2 分库分表组件

分库组件,我们调研过公司现有的和开源的组件,最终选用了开源的sharding-jdbc。

1)携程的dal组件

dal使用dal cluster通过服务端配置分库分表信息,但是全套使用dal太过笨重,它是一个完全的ORM框架,生成sql的工具不支持生成特殊自定义的sql。

2)去哪儿的qdb组件

通过配置表达式或算法的方式进行分库分表配置,缺点是文档较少,容易踩坑。

3)MYCAT

Mycat是一个中间件,它拦截了用户发送过来的SQL语句,首先对SQL语句做了一些特定的分析:如分片分析、路由分析、读写分离分析、缓存分析等,然后将此SQL发往后端的真实数据库,并将返回的结果做适当的处理,最终再返回给用户。Mycat的缺点就是需要搭建一套中间件做拦截者,而且需要自运维,成本比较高。

4)sharding-jdbc

当当网首先推出的开源分库组件,现在变成apache项目,分为sharding-jdbc、sharding-proxy。开源社区活跃。我们使用轻量级的sharding-jdbc,可以编写算法,支持精确分片、范围分片、复合分片和自定义hint分片,配置方式支持xml、yml和java api方式。基本能解决我们所有的分库分表需求。我们把分库算法包成jar包,方便使用。配置我们使用yml。在使用过程中,需要结合dal cluster的key,代码示例如下:

2.3.2 前置系统设计

 

账务前置位于整个账务体系的最上游,提供标准的交易接口,包括入款、入款返还、出款、出款返还、预授权类、转账以及批量接口。

2.3.2.1 标准的交易接口

整合之前的老系统,都是业务导向的接口,随着业务的不断迭代,接口越来越多,职责不清晰,代码重复,给维护带来很大的工作量。比如:光提现接口,就分为个人提现、返现提现、商户提现和定向提现。另外,原先的子账户的交易顺序是硬编码的,如果发生子账户的增加或交易顺序的变化,带来的复杂度就成倍增加。

我们经过研究,发现账务处理是有共性的,对于交易顺序、原子交易类型都是可以提取出属性的。所以我们建立了场景码模型。

首先,我们定义子账户id,按账户类型+币种+业务类型唯一定义一个子账户。

其次,按产品代码+交易类型来定义一个交易顺序,交易顺序关联子账户id,该顺序设置为默认的场景码。接口只要传入产品代码和交易类型就能能走默认的场景码。

第三,支持商户自定义场景码,我们维护了一个后台管理系统,允许商户自定义场景码,审核通过后,接口传入该场景码编号就可以走自己定义的场景码。


2.3.2.2 异步化

我们接口都是同步接口,为了减少同步响应时间,把次要的工作通过mq进行异步化处理。比如:转账的转入方入款,抛送会计等。 


2.3.2.3 数据库策略

除了支持自己的支付业务,也支持把账务系统输出到其他BU。为了数据权限及互不影响,我们做了数据隔离。需要特别说明的是,只做数据隔离,系统还用同一套,不做隔离,方便发布和运维。数据隔离分两层,第一层是domain,区分自有/BU。第二层是具体分库。

sharding库也分两套,Mapping库和交易库。Mapping库存放请求流水号和前置流水号的关系。交易库存放所有的交易信息。特别地,我们把逆向交易和原交易落在同一DB中,这样有利于控制逆交易和原交易在一个事物内。

首先,我们使用请求流水号做hash算法,分散到mapping db。Mapping db只保存请求流水号和前置流水号的关系,Mapping db也是分库的,分库数量初始是固定的,以后扩展可以用一致性hash算法进行扩容。

我们的交易表是通过权重配置来分库,通过权重可以进行数据的自由分配。DB支持友好的扩容,下线和故障切换。我们有一套故障切换的方案,如果某个分片出现dbconnect异常,我们会抛送支付的监控系统。监控系统会有套智能算法会实时监控,达到阀值后自动触发该分片的markdown/markup机制。


2.3.2.4 异常处理

高并发场景下的异常处理一直都是各方研究的课题。为了适应高并发场景,前置做了如下的异常处理:

1)幂等机制:所有接口都支持幂等操作。

2)重试机制:接口内部调用的重试,job补偿重试,上游也可以发起相同请求报文的失败重试。

3)查询机制:所有接口都写了一套查询接口,上游可通过查询接口查该交易的最终状态。

4)通知机制:支持成功/失败的结果主动通知上游的机制。


2.3.3 原子系统设计

原子系统流程处理中,主要有以下几步:订单参数预处理,分单,同步执行器,异步执行器,后处理,最后封装参数返回。为方便业务扩展,系统维护,在分单和执行部分,系统架构采用责任链模式的分单器;代理进行分单,产生drivers,再由系统自动注册的同步执行器和异步执行器进行执行。目前,只有订单登记簿采用异步方式完成,后续job系统中会对任务进行相应的补偿。

下图为原子系统的系统架构图:

PreBizProcess是参数预处理部分根据调用域不同进行了定制化校验与信息构造。

DispatcerControl是分单部分,因为原子系统负责账户余额的管理,不存在任何业务逻辑,所以可以将记账模型进行抽象以适应不同的业务需求。记账模型包括账户入账与出账(Accnt)、活动入账与出账(Activity)、资金冻结与解冻(Fund)、日登记簿入账与出账(DaliyBook)、订单登记入账与出账(OrderBook)等记账模型。针对有效期概念的账户,增加了登记簿管理,日登记簿对账户同一有效期的资金进行汇总,订单登记簿是有效期的资金的订单维度的记录。

SynExecutor是同步执行器主要负责出账入账,资金冻结解冻,日登记簿处理;AsynExecutor是异步执行器负责订单登记簿的记账操作。日登记簿采用同步执行的方式,而日登记簿记账成功可保证订单登记簿记账成功,故订单登记簿采用异步记账既可以保证记账成功又能减少系统同步处理的时间。

后处理部分会发送动账消息,给关心账户余额变动的系统,比如风控。

2.3.4 会计系统设计

会计系统采用复式记账方式完成,可以清晰的表述资金是从哪里来并流向了哪里,针对不同的业务涉及不同的清分规则。在清分规则中可以配置记账的不同策略,比如单条、汇总记账等不同策略。

针对同一业务多科目的场景,添加扩展配置,实现清分规则的科目动态化。


2.3.5 日终系统设计


2.3.5.1 为什么需要日终系统

1)提供账务系统支撑

要保证账务系统能正常运转,账务的余额要100%准确。影响账务系统稳定性的主要因素有一下几个方面:

  • 缓冲记账,问题表现:分录有数据,明细无数据

  • 会计异步记账,问题表现:明细有数据,分录无数据

  • 分录规则配置,问题表现:同一笔分录中,借贷方金额不一致

2)为企业大财务提供汇总记账凭证

账务系统记录的是业务账,这些数据是整个企业财务数据的一部分,需要合并到公司的大财务系统中去。

日终系统对会计分录进行加工映射为大财务的分录,然后汇总,直接对接企业ERP总账。


2.3.5.2 日终系统都做了什么

1)生成快照

每日凌晨统计截至上一日的所有账户的快照。

2)生成分户账

根据快照生成分户账。

3)生成总账

根据分录流水生成科目总账,科目发生额和余额从末级科目逐级汇总到一级科目。

4)总账平衡检查

余额平衡检查:一级借方科目余额=一级贷方科目余额;

发生额平衡检查:一级科目借方发生额=一级科目贷方发生额

5)总分核对

总账科目余额等于分户账科目余额。业务24小时不间断运行,账户中余额在不断变化,无法准确取到期末的账户余额进行核对,采用余额快照与总账科目余额进行核对。

6)稽核明细

检查明细账与分录流水是否一致。对于当日发生过余额变动的账户,昨日余额与分录流水中的发生额进行轧差,检查计算出的余额与快照余额是否一致。


2.3.5.3 日终系统遇到的挑战

1)24小时记账

在银行账务系统中,对于24小时运行,有很多种方案,例如切换余额、记不同分户账、日切后补流水等,但无论哪种方案,都不能实现完全24小时运行。

其问题,主要是因为日终要进行总分核对,而分户账余额是在不断变化的,所以要想办法把期末的分户账余额取出来进行核对。

本日终系统解决方案,采用余额快照与总账进行核对,这样即使分户账余额进行变化,也不影响总分核对。

2)生成账户快照

生成快照的方式有两种:

  • 从账户余额中获取

  • 交易明细按账户汇总发生额更新快照

相较于数亿账户而言,每日发生交易的则要少得多。采用动账汇总的方式,对于数据库的操作更少,处理时间更快。

3)流程复杂、测试困难

对日终任务模型进行抽象,按照业务边界划分为:快照生成、分户账生成、总账生成等多个子任务,自动注册到任务工厂中,以便编排调用。


 

2.4 总结

此系统业务接入规则、会计清分规则都是基于配置的,在业务发展的新增账户类型、业务、币种、机构等日常变化都可以基于配置进行。          

一

三、后记

账务中台建设到现在,已经完成了携程体系内账务中台的基本建设,这只是中台建设的第一步,后续规划还包括分布式事务、热点账户的处理;新机构业务接入如何更简洁等等。

 

【推荐阅读】

 “携程技术”公众号

  分享,交流,成长

分库分表真实案例,扩容10倍容量 数据存储我们一般采用MySQL,但是面对海量数据,单表在容量及性能上都无法支撑。这时我们要如何解决。今天就给大家讲讲携程的分表业务是如何落地的。一、背景随着机票订单业务的不断增长,当前订单处理系统的架构已经不能满足日益增长的业务需求,系统性能捉襟见肘,主要体现在以下方面:数据库CPU资源在业务高峰期经常达到50%以上,运行状况亮起了黄灯磁盘存储空间严重不足,需要经常清理磁盘数据腾挪可用空间系统扩容能力不足,如果需要提升处理能力只能更换配置更好的硬件资源因此我们迫切需要调整和优化机票订单数据库的架构,从而提升 阅读详情

相关推荐

IEC103协议实战指南:报文解析与传输优化策略

本文深入解析IEC103协议在电力自动化系统中的核心应用,重点拆解其固定帧与可变帧两种报文格式,并详细阐述了主从问答与非平衡传输机制。文章结合实战经验,针对报文解析中的常见问题(如字节序、超时重发)提供了解决方案,并探讨了传输层优化策略,旨在帮助工程师实现更可靠、高效的通信链路。

r2s3t4的博客 541

支付“清结算”体系的设计方法

支付“清结算”体系的设计方法

深圳市多克创新科技有限公司 2539

电池管理系统(BMS)系列(四)—数据采集之温度

属于BMS系列文章,介绍了电池包温度采集相关方式

zxx52113140的博客 5456

MySQL 亿级数据的迁移、清洗、与审计分析

职业生涯中,曾经有两年多时间从事IT内部审计的工作,需要介入公司大部分的业务系统,主要的数据库为 MySQL,特别是三年期审计,需要统计三年的数据素材(亿级以上)。对MySQL的性能有一些自已的理解,.........

刘一二 2549

从零构建2.4G无线通信系统:MSPM0G3507与NRF24L01的深度协同设计

本文详细介绍了基于MSPM0G3507微控制器与NRF24L01射频模块构建2.4G无线通信系统的深度协同设计方案。内容涵盖系统架构、SPI通信优化、功耗管理、抗干扰机制及中断/DMA高效利用,为工业物联网应用提供高可靠、低功耗的无线传输解决方案。

rice5的博客 820

Android实现TextToSpeech控件实现语音播报--朗读文字 (附完整源码)

Android实现TextToSpeech控件实现语音播报--朗读文字 (附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 1116

携程技术专家:业务中台建设背景下的元数据驱动架构实践

点击“技术领导力”关注∆每天早上8:30推送来源:携程技术(ID:ctriptech)作者简介灿荣,携程软件技术专家,目前关注互联网中台以及中间件领域。一、背景介绍 为...

技术领导力 1728

若依框架二次开发——RuoYi-AI 本地部署流程

若依框架二次开发——RuoYi-AI 本地部署流程

bjzhang75的博客 1784

基于数据中台,携程金融大数据风控算法的演进

本文主要分享携程金融风控算法从0到1的发展进程,以时间为主线,经历了数据样本由少到多、特征由粗到细、模型由简单到复杂、效果由坏到好的全过程,重点以申请评分模型和反欺诈模型进行阐述,是一次很好的风控模型实践报告。 一、业务介绍 模型一定是基于业务的,所以首先介绍一下携程的业务情况,即本文所提及模型的实际应用场景。携程金融主营业务有三大模块: 消费金融,包括消费分期(拿去花...

Liyiming 2082

VTK 显示大量点云数据及交互(点云拾取、着色、测量等)功能

VTK (Visualization Toolkit) 是一个强大的开源可视化库,非常适合处理点云数据。下面将介绍如何使用 VTK 显示大量点云数据,并实现点云拾取、着色、测量等功能。

深之JohnChen的专栏 1994

097、Zephyr RTOS驱动开发实战:传感器驱动(陀螺仪)

I2C速率别设太高:LSM6DSO支持最高400kHz,但实际布线有寄生电容时,400kHz容易出错。工业产品我统一用100kHz,稳定压倒一切。FIFO水印值要计算:假设ODR=6.66kHz,每150us产生一组数据,如果水印设32组,则每4.8ms触发一次中断。这个间隔要大于I2C读取耗时(实测约200us),否则中断堆积。电源纹波敏感:陀螺仪对电源噪声敏感,特别是3.3V供电时。我遇到过因为DC-DC纹波太大,陀螺仪输出噪声从0.1dps飙升到2dps。

m0_50546716的博客 118

干货 | 当你在携程搜索时,背后的推荐系统是如何工作的

作者简介葛荣亮,携程搜索部门高级研发工程师。2015年加入携程,目前主要负责搜索平台的前端+数据挖据工作。一、前言随着旅游业的发展,人们对搜索的要求越来越高。智能化大趋势...

携程技术中心 2717

3、保险行业商业智能解决方案的理解与实施

本文详细探讨了商业智能(BI)在保险行业的应用与实施策略,涵盖了从BI环境开发的关键步骤、自下而上与自上而下的数据仓库开发方法,到决策支持工具的选择与使用。文章还分析了BI系统与互联网、内联网和外联网的结合方式,并讨论了购买与自建方案的优劣比较,最后总结了商业智能成功的关键因素及其对保险行业带来的商业价值。通过实际案例与未来趋势展望,展示了商业智能如何推动保险企业的数字化转型和竞争力提升。

moon9的博客 97

DDD落地:从携程订单系统重构,看DDD的巨大价值

携程用车订单业务包括接送机、包车、打车等产线,涉及订单状态管理、支付状态管理、供应商订单状态管理、履约状态管理等功能。履约状态关乎司机相关状态,完成订单需结清额外费用。携程租车订单业务涵盖订单状态管理、支付状态管理、押金扣除记录、供应商订单状态管理、履约状态管理等功能。履约状态主要涉及取还车相关状态。通过划分上下文和明确职责,各个领域负责自己的数据和领域知识。这样一来,订单不再涉及这些字段,而是由数据写入的业务方负责维护。因此,在后续与订单无关的业务逻辑发生变化时,订单无需进行修改。

架构师尼恩 1379

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

阿里面试:每天新增100w订单,如何的分库分表?这份答案让我当场拿了offer

例如,在一个有 10 个节点的系统中,增加一个新节点,只会影响到该新节点在哈希环上相邻的部分数据,其他大部分数据仍然可以保持在原节点,大大减少了数据迁移的工作量和对系统的影响。狠狠卷,实现 “offer自由” 很容易的, 前段时间一个武汉的跟着尼恩卷了2年的小伙伴, 在极度严寒/痛苦被裁的环境下, offer拿到手软, 实现真正的 “offer自由”。在 3 - 5 年的中期阶段,随着业务的稳定发展和市场份额的进一步扩大,订单数据的增长速度可能会有所放缓,但仍然会保持在每年 20% - 30% 的水平。

架构师尼恩 1394

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

转载 -- 携程金融大数据风控算法实践

「数据中台」 模型亦是基于完善的技术平台的,携程金融数据中台可以抽象为三个层次,底层是基础数据层,中层业务抽象模型层,以及最上层的算法模型层。 Fig . 2 携程金融大数据中台的抽象结构 中台这个概念早期是由美军的作战体系演化而来的,技术上所说的“中台”主要是指学习这种高效、灵活和强大的指挥作战体系。比如电商领域,经过十几年的发展,组织庞大而复杂,业务不断细化拆分,也导致野蛮发展的系统越来越不...

jin_tmac's studio 1637

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

干货 | 领域化、中台化和多Region化,携程账号系统演进之路

作者简介Scai,携程高级研发经理,多年深耕于账号中台,持续推进中台的技术架构演进及性能优化。一、前言在互联网早期时代,账号系统的功能非常广泛,包括账号管理、登录认证相关能力以及维护各类用户信息,比如头像、昵称、积分、等级等。随着业务的发展,每个功能逐渐分化出自己的需求和架构侧重点,独立出各自的领域服务也成了业界共识。本文分享的账号系统,指的是提供用户账号管理、登录认证相关能力的系统。介绍了携程在...

携程技术 1184

携程大数据实践:高并发应用架构及推荐系统案例

本文来自携程技术中心基础业务研发部的《应用架构涅槃》系列分享。据基础业务研发部负责人李小林介绍,互联网二次革命的移动互联网时代,如何吸引用户、留住用户并深入挖掘用户价值,在激烈的竞争中脱颖而出,是各大电商的重要课题。通过各类大数据对用户进行研究,以数据驱动产品是解决这个课题的主要手段,携程的大数据团队也由此应运而生;经过几年的努力,大数据的相关技术为业务带来了惊人的提升与帮助。以基础大数据的...

happytofly的博客 1374

聊聊Dubbox(二):架构原理

公众号推荐:公众号:VOA英语每日一听微信号: voahk01可长按扫码关注,谢谢

IT技术精选文摘 744

支付系统详解:清结算系统

清结算系统是第三方支付系统按照与商户的协议,将一个结算周期内的收付款项汇总轧差生成待结算金额,并将待结算金额结算给商户的一个功能模块,是支付系统的一个子系统。 第三方支付系统的清结算系统并不是与人行的支付清算体系处在同一层级的系统,简单来说,后者担任着完成银行与银行之间的资金清算,而前者仅仅服务于一个第三方支付系统,完成对第三方支付系统的商户的资金结算。 大家想必注意到了清算和结算用词的差异,...

阅读之后,对你有帮助,那就点个赞再走吧 3937

大白话中台系统

什么是中台系统?它是如何诞生的?它长什么模样?我们为什么需要它?一串串的问题不禁浮现在我们的脑海,今天我们就带着这些问题,一起走进中台。   1、中台诞生   任何一个软件系统都是通过帮助客户解决问题来实现价值的。针对不同的需求会建立不同的软件项目。   这些软件项目包含客户端的应用和后台管理配置的应用。久而久之就形成了固定的“前台”和“后台”系统,而且大家都在乐此不疲地开发着类似的业务系统...

jiangjiane 1万+

清结算产品&系统

摘要 清结算是什么 名词解释 基本结构 流程结构 核心结构 产品系统结构 支付宝基本结构 个人设计的清结算系统结构 系统架构概况 费用中心 支付系统 整个设计核心内容 参考摘要 清结算行业在金融领域或者当前的互联网行业越来越凸显,从刚开始踏入这一领域到实现其产品、系统整体过程之后,觉得有必须和大家分享一下,清结算领域的内容,其实这方面的资料相对来说比较缺乏,很难找到,刚入行的时候,真是资料难寻

program_red的专栏 3万+

支持c#的分表分库组件-Ctrip DAL

Ctrip DAL是携程框架部开发的数据库访问框架,支持代码生成和水平扩展。其由携程技术中心框架部DAL团队开发,历经3年不断打磨,并在长期的实际使用中基于大量的用户反馈不断优化。

寒冰屋的专栏 434

干货 | 携程中台化背景下的元数据驱动架构实践

作者简介灿荣,携程软件技术专家,目前关注互联网中台以及中间件领域。一、背景介绍 为解决系统重复建设、能力复用性低的问题,携程启动了中台化建设步伐。旅游行业的中台建设,携程并...

携程技术 1992

干货 | 数据质量良莠不齐?携程是这样来做多场景下的内容智能发现的

作者简介朱登龙,携程AI研发部高级算法工程师。负责NLP内容化的相关工作,主要专注领域为文本分类,文本抽取,文本生成,文本内容信息挖掘等。协同完成多场景智能内容抽取和生成...

携程技术 1594

干货 | 携程平台化常态化数据治理之路

作者简介瑞强,携程高级大数据开发工程师,负责集团客户数据平台、数据资产管理平台的开发和数据治理的推进。一、背景数据的重要性不言而喻。每个数据工程师每天会产生大量数据,但这些数据占用的成本...

携程技术 773
上一篇: 干货 | 以模型为中心,携程契约系统的演进
下一篇: 干货 | 实时数据聚合怎么破
携程技术
博客等级 码龄10年 3716粉丝 324原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值