企业服务总线ESB在实际项目中一般有两个重要的应用模式,一是数据总线,二是服务总线:数据总线包括数据集成和文件传输,主要实现数据的抽取同步、清洗转换、加工汇总,典型应用场景就是ODS、数仓的数据汇聚;服务总线包括应用集成和API管理,主要满足跨系统的业务集成,最佳实践是通过API管理注册业务系统服务,满足服务治理、代理、鉴权、导出、统计分析、服务监控的需求,而应用集成以支持MDM、IDM产品之间的数据同步分发、统一认证为主。
ESB服务总线的典型应用之一就是完成基于服务的业务集成,通过ESB实现业务系统的凭证集成,同时对凭证相关的基础数据进行同步集成,以满足系统对接的需要。基于项目的实际开发情况对业务场景进行梳理,一方面总结ESB在业务集成项目的中应用方式,同时也可以不断积累ESB实际经验,为ESB升级优化提供借鉴。
1总体说明
本次只分析基于ESB的应用集成实现,主要业务需求是通过ESB实现二级子集团和集团的财务凭证对接,同时为了满足凭证对接的准确性,对于凭证涉及的基础数据也要进行同步。
1.1建设内容
1.对部门、人员、客商、项目档案等四类主数据主数据进行集成,由二级子集团的财务系统推送至集团财务系统;
2.建立主数据中间库,部门、人员、客商、项目档案以及产成品信息、原辅料包材信息等六类主数据从源头推送到ESB后,在ESB中将数据存储到中间库;
3.凭证集成,将二级子集团的新增/删除凭证通过ESB集成流程推送至集团财务系统;
4.凭证回调,集团财务接收二级子集团凭证并成功写入后,通过ESB的回调接口将写入结果回写对应的二级子集团。
1.2业务架构
业务架构图如下:
整体业务流程主要分为主数据集成和凭证集成两部分:
1.主数据集成:
1)主数据集成为单向流向,只从二级子集团流向集团财务,主要是为了保证凭证单据的关联和辅助核算;
2)由各二级子集团提供源头数据,通过ESB集成接口将数据发送至集团财务;
3)同时ESB将主数据在中间库进行存储,主要是为了后续主数据管理的建设需要;
4)目前涉及的主数据类型主要有四类:分别是部门、人员、客商和项目档案;
5)产品信息、原辅料信息数据由于信息中心需要,所以也要有二级子集团推送,但暂时只落地中间库存储,不推送集团财务。
2.凭证集成:
1)凭证集成也是单向流向,数据从二级子集团流向集团财务;
2)凭证的操作包含新增、删除,由于集成对接的都是正式凭证,财务系统不允许修改,所以凭证没有修改;
3)由于凭证数据和处理过程相对复杂,为了提升集成响应效果,凭证新增采用异步的方式,即财务接到数据后先返回正在处理标识,处理完成后再通过ESB给二级子集团返回处理成功的日志。
1.3集成架构
集成架构图如下:
本次项目的集成访问主要是各二级子集团的财务系统和集团财务系统,通过ESB进行打通,实现数据同步,同时在数据库中建立中间表,用于对主数据进行留存。其中二级子集团财务系统、集团财务系统和ESB为双向交互,二级子集团推送数据至ESB,同时也接收ESB返回的凭证处理结果;集团财务接收ESB推送的主数据和凭证数据,同时将凭证处理结果推送给ESB。中间库只做单向写入