实战丨人保财险分布式架构转型探索与实践
欢迎金融科技工作者积极投稿!
各抒己见!
投稿邮箱:
——金融电子化
中国人民财产保险股份有限公司
软件开发中心副总经理 何栋
人保财险信息化历程
中国人民保险作为与共和国同龄的保险企业,70余年里一直秉承“人民保险,服务人民”的宗旨,主动承担社会责任,提供了高品质的保险服务。
过去二十多年,随着业务持续快速发展和商业模式转型升级,人保财险核心系统也在不断升级和演进,其发展历程大致经历了三个关键阶段:第一个阶段是大一统的单体应用建设阶段;第二个阶段是基于能力复用目的按照业务领域和公共能力独立建设的平台化建设阶段;第三个阶段是面向移动互联商业模式的移动化建设阶段。
近年来,随着移动互联网、区块链、大数据和人工智能等新技术的全面深入应用,以及新商业模式的涌现,保险业态正在发生巨变,对保险企业的IT能力提出了新的挑战。特别是在“双十一”“双十二”等业务高峰,以及业务政策发生重大变化的节点,比如商车费改、“报行合一”等,传统集中式架构存在扩展能力差、不能自动弹性扩缩等问题,在面对这些场景时难以应对。保险企业IT架构需要更强的弹性扩展能力,而分布式微服务架构就是最佳选择。
2018年,中国人保提出了向高质量发展转型“3411”工程。在此背景下,中国人保启动了信息系统新架构的研究工作,在集团层面统一规划建设,统一技术标准,优化研发运营体系,实现全集团业务支撑能力的复用。
基于上述背景和目标,人保财险正式开启分布式微服务架构转型,2019年8月发布了PDF-C分布式微服务技术体系和人保云,建设并上线了分布式架构核心系统,实现了核心系统的全分布式化和云服务化。
分布式架构实践与成效
1.总体设计思路。分布式架构大多采用冗余或模块拆分的方式,使业务和应用具有更强的扩展能力,实现高可用。AKF扩展立方体模型(见图1)是分布式架构可扩展能力设计的经典方法论,可以指导我们完成分布式架构能力建设。
图1 AKF扩展立方体模型
AKF模型包含XYZ轴三个维度。其中,X轴表示通过克隆应用和数据库实例,提高应用和数据库的业务承载容量;Y轴表示通过划分业务职能边界建立领域模型,拆分应用和设计微服务,提高业务复用和扩展能力;Z轴表示通过数据分片策略,将数据集拆分为多个数据子集或业务单元,提高数据扩展能力。三个维度分别覆盖业务和技术多个不同领域,它们融合在一起就可以实现分布式应用能力的无限扩展。
人保财险分别从业务和技术两方面协同设计,提升AKF模型XYZ轴的能力。
业务方面,参考业务流程和功能边界,基于职责单一性原则划分业务领域边界、构建领域模型、拆分和设计微服务。采用分治策略,降低业务分析和应用建设的复杂度,提升AKF模型Y轴业务扩展能力。
技术方面,在基础架构和技术架构等多个技术领域,从提升自动化运维、高可用和业务承载能力入手,提升AKF模型XZ轴扩展能力。
一是建立基于云原生技术的人保云平台,完成IaaS层基础资源和PaaS层技术组件资源的云服务化,实现基础资源的统一管理、快速扩容、统一调度和自动分配,支持应用和数据库的弹性扩缩、快速部署和稳定运行。
二是建立分布式架构技术体系,采用前后端分离设计和微服务架构,让应用具备上云的能力,基于人保云实现自动弹性扩缩,提升应用可扩展能力。采用数据分片策略和单元化设计,提升数据和业务单元的可扩展性,提高数据中心业务承载能力,从企业全局建立多中心多活的能力,实现应用的高可用。
2.业务建模与微服务设计。单体应用拆分和微服务设计是分布式架构设计的一个难点。我们既要保证微服务边界清晰,同时需要支持微服务架构演进。微服务设计时先从业务视角出发,首先完成业务领域边界划分和领域建模,然后将领域模型作为微服务设计的输入,最后将单体应用拆分为一个个边界清晰、“高内聚,低耦合”、业务职责单一、可以轻松演进的微服务。通过分治策略,化整为零,打破了传统的系统概念。
在构建领域模型时,我们考虑业务能力的企业级复用,区分通用能力(如客户、用户等)和核心能力(如承保、理赔等),整体考虑前中后台的协同设计。
一是抽象和沉淀通用业务能力,如工具平台、公共业务模块等能力,建立标准的通用能力领域模型,实现通用能力的企业级复用。
二是构建可以满足不同渠道核心业务能力复用要求的核心业务领域模型,统一移动互联和传统核心领域模型,避免核心业务能力重复建设。
三是整体考虑前台、中台和后台的协同,实现不同渠道应用的前端页面、流程和服务复用,实现不同业务板块核心业务链路的联通,实现前台业务流程和企业级数据的融合,支持前台一线业务和商业模式创新。
在将单体应用拆分为微服务后,我们就可以按照TwoPizzaTeam团队建设原则组建项目团队,更好地实施敏捷开发。另外,微服务部署包相对较小,可以更好地上云,实现应用的弹性扩缩,提高自动化运维能力,更好地管理和利用好资源。
3.分布式架构技术体系建设。在微服务落地时需要很多的技术组件来支撑,这些不同技术领域的组件就构成了人保财险分布式架构技术体系。经过近四年的技术积累和实践,我们已经完成了自主可控的新一代分布式微服务技术体系PDF-C(PICC Development Framework for Cloud)的研究和建设,它向上可以支撑微服务的落地,向下可以适配人保云,有效应对高频海量业务访问场景。
PDF-C技术体系涵盖开发、测试、运维等软件开发全生命周期,实现了各类技术组件的平台化、标准化。具体包括前端开发框架、微服务开发框架、微服务治理组件、分布式数据库以及分布式架构下诸如复制、同步等数据处理相关的技术组件(见图2)。
图2 PDF-C技术体系
在技术选型时我们重点关注技术组件与保险业务场景的匹配能力。例如,在分布式数据库选择时,我们重点考虑数据的线性扩展能力,数据分片以及对多中心多活的支撑能力;针对高频访问的业务场景,引入分布式缓存和搜索引擎等技术组件;对于微服务架构下大量的数据复制和异步操作,引入数据复制和消息队列等技术组件。总之,在技术组件选型时应尽可能选用成熟的技术组件,保障业务的高性能和稳定性。
PDF-C分布式架构技术体系全面支持了人保财险核心业务系统的研发和运营,它可以快速构建前中后台业务逻辑,支持应用自动弹性扩缩,支持互联网高并发访问。所有基于新架构的应用均部署于x86服务器,可以完成小机下移,全面支持自主创新,同时可以提升人保财险的IT技术能力和一体化水平,降低技术栈差异性和系统集成难度,有效支撑集团一体化运营。
4.单体应用向微服务的演进策略。在对单体应用完成领域建模后,就可以根据领域模型边界,在单体应用之外,按照“急用先行”原则将新功能和部分业务能力独立出来,建设独立的微服务。
在从单体应用向微服务架构演进时,新微服务与单体应用并存运行。新微服务与单体应用之间保持松耦合关系,两者只通过服务或异步化的数据进行业务关联。随着时间推移,大部分单体应用的功能就会被独立为微服务。通过逐步剥离单体应用的业务能力,最终完成微服务替换原有的单体应用。
5.研发运营模式的转型。面对需要支撑分布式架构下大规模的微服务和部署单元的应用场景,我们在架构转型的同时,启动了研发运营一体化(DevOps)模式转型。通过组织协同、流程优化和工具平台三者结合,将软件需求、开发、测试、部署、运维和运营相关流程统一起来,基于整个研发运营团队进行组织协作优化,实现项目管理、开发测试、持续交付和应用运营的无缝集成,快速交付高质量的软件和服务。
一是在人员保障方面分两级组织,一级由技术经理、验收测试人员、运维人员整体把控需求、进度和部署,二级在项目团队下设立若干开发测试小组,实施开发测试任务。
二是在流程标准方面形成两个闭环,一个是需求、开发、测试、部署、运维的闭环,保证迭代任务的全生命周期管理;另一个是在各流程内部的实施、检查、反馈、改正的闭环,保证阶段性任务的实施效果。
三是在工具运用方面实现集成链接,通过流水线链接开发、测试、部署的各个环节,通过平台建设来适配支持各种流程变化。
DevOps已经在40多个分布式项目团队实施推广,共涉及约200个微服务,建立流水线约1500条,流水线执行总量近10万次,实现了分钟级在线升级,支持紧急需求当天上线。该体系已通过中国信息通信研究院《研发运营一体化(DevOps)能力成熟度模型第3部分:持续交付》3级评估,达到国内领先水平。
6.对业务的赋能。人保财险于2019年正式发布PDF-C分布式架构技术标准,完成分布式核心1.2版本上线,全面提升业务支持能力和用户体验,主要成效如下。
一是通过业务建模和中台化设计,实现了企业级业务能力复用。通过将传统单体系统的功能整合重构,形成了一系列可共享的中台组件,实现了应用的灵活组合、共享以及业务逻辑和数据的统一。以保险产品上线为例,基于产品中心与承保中台,实现了保险产品的配置化上线,业务人员可以直接对产品要素、出单界面和业务规则进行定义与配置,并一键发布到网点柜面、官网、移动端等各个渠道。传统保险产品上线一般需要经过数周的开发周期,而在分布式架构下可缩短至小时级,且确保了各个出单界面的规则完全一致。
二是通过分布式技术的应用,极大地提升业务承载能力与处理效率。分布式核心上线后,数据访问和查询效率得以显著提升,实现了全国数据的一体化应用与实时查询。以呼叫中心场景为例,在分布式核心系统,客服坐席可以查询全国保单数据,同时保单和案件的查询时效由传统式架构的2秒缩短至200毫秒左右,极大地提升了服务效率。
三是面向业务场景重塑流程,升级用户体验。通过前中台分离的模式,人保财险全面重构了前台,打破了传统单体式系统的功能边界,从角色和业务场景出发,构建了一系列门户,保障每一个用户获得“一次登录,统揽全局”的功能体验,极大提升操作体验与处理效率。以销售人员为例,通过统一的销售门户登录即可获得全场景的功能支撑,完成原来分散在销售、承保、理赔等不同系统的业务操作。
四是建立了异地一键切换的多中心多活能力,支持资源按需交付。人保云已建成南北两地双活的云数据中心环境,南北中心同时对外提供服务,业务数据实时双向同步,实现了2000公里异地双活。当数据中心出现故障时可以一键完成多活切换,实现秒级异地业务接管,极大地保障了业务运营的连续性。通过云管理平台,云主机资源交付仅需约3分钟。
思考和展望
分布式架构建设的复杂度要远远超出传统数字化建设,企业需要投入大量的人力和物力,综合提升各方面的能力。数字化转型离不开人才培养、技术积累、组织架构能力建设等内容,同时还需要在统一的方法论指导下,协同有序开展,让团队能够高效地运转。这些能力不是一朝一夕就能建成的,过程会比较复杂,也比较漫长。企业可定下长远目标,首先找到解决问题的根本和切入点,从提升基础技术能力入手,然后逐一解决业务模型统一和组织能力建设等问题,分阶段有步骤地迭代演进、稳步推进。
企业数字化转型知易行难!我们将在中国人保“3411”工程的指导下,不忘初心,继续深耕数字化转型,强化科技赋能,谱写人保财险数字化转型的新篇章!
(点击查看精彩内容)
关于仿冒我刊收费的声明
我刊自创刊以来,从未向投稿人收取过任何费用。任何以刊发文章为名向投稿人收取费用的行为,均属于对投稿人的欺诈行为。
我刊投稿邮箱为 [email protected]。