3.4.3 分布式计算
随着银行系统规模越来越庞大、复杂,集所有业务单元于一体的集中式架构体系已然难以满足银行自身业务快速发展的需要。传统大型机、小型机物理设备的购买费用及后期高昂的维保服务费用,一直占据年度科技建设费用的“大头”,这势必会缩减科技创新的费用投入。随着PC服务器性能不断提升及分布式服务架构、分布式计算方案逐渐成熟,越来越多的银行已经从大型机、小型机的集中式架构向基于x86服务器的分布式计算架构迁移。
分布式计算把网络上分布的资源汇聚起来,完成大规模、复杂的计算和数据处理任务。分布式计算以分布式方式把巨大的计算任务分隔成许多足够小的单元,每个单位可以在单机能够承受的条件下执行,在降低单个节点配置要求的同时大幅提升计算并发度和计算效率。正是因为此特性,采用分布式无状态的设计模式构建应用系统,可以使应用的并行处理能力近乎无限扩展。目前主流开源微服务分布式框架包括Spring Cloud、Dubbo、Thrift等,也有一系列商业分布式服务框架,如淘宝HSF、腾讯TSF、亚马逊Coral Service、华为DSF等。
图3-9是Dubbo分布式服务架构,以生产者–消费者模型为基础,并在此基础上新增了注册中心和监控中心。服务通过注册的方式被注册到统一注册中心,消费者访问注册中心获取生产者信息,从而直接访问生产者获取消费消息。作为一款高性能、轻量级的开源分布式服务框架,Dubbo提供了面向接口的远程方法调用,具备天然智能容错、服务治理和负载均衡功能。
图3-9 Dubbo分布式服务架构
在分布式迁移过程中,需要将原有独立的集中式服务分为多套松耦合的分布式服务,这会给运维带来跨系统调用的网络传输保障、多系统的负载均衡保障、各数据节点的一致性和同步保障以及服务拆分等大量支撑工作,会对自动化运维提出更高的要求。新形势下的分布式计算架构让人工运维成为过去,需要我们的运维人员向标准化、平台自动化、数据化和智能化运维探索,建立完善的自动化运维保障体系。