工商银行以百度智能云天合Stack云原生私有云平台为基础,成功构建Serverless函数计算2.0技术架构。Serverless2.0平台在技术选型上以百度智能云天合Stack的函数计算产品为核心,并与工商银行现有的分布式、云计算技术平台做对接,为应用提供完整的函数核心引擎、函数管理能力、开发交付能力。
在这个基础上,工商银行不断打造体系完备、服务能力领先的分布式技术架构,加速升级金融级云平台,为全行业应用云原生提供了最佳业务实践范本。
从发展历程来看,工商银行应用Serverless并非盲目跟风,而是充分考虑了具体业务场景。首先,工商银行已有云计算、分布式架构体系及容器云平台的基础,面对业务量的显著增长,手机银行及PC端的业务改造压力非常大。其次,商业银行的竞争日益加剧,互联网企业的跨界渗透也很严重,这些都要求银行信息系统加快创新步伐。
2020年,工商银行原有的Serverless 1.0平台已经不能满足业务的需求,比如面对实例冷启动响应速度较慢,每次发布都需要制作新的镜像等等问题,亟待平台升级。工商银行以百度智能云天合Stack的函数计算产品为核心打造了Serverless 函数计算平台技术架构2.0。项目经过周密论证,做到了从部署、应用到运维,完全符合预期。
从业务场景来看,函数计算主要应用于三大场景:
首先是应用后端服务,主要包括BFF接口聚合服务、服务端渲染SSR、静态资源服务三种主流场景,应用于大家熟知的小程序、H5等场景。
在接口聚合应用中,以手机银行和PC端个人网银为例,这些项目背后均有诸多对应的子应用,且边界较强,各个研发运维团队在配合时出现过响应不及时的问题。通过业务功能使用函数计算进行开发等方式,可实现业务开发前后端技术栈、研发模式的统一,提升开发过程中的响应速度。
在服务端渲染中,如果应用采用服务端渲染改造的成本就会非常高。但通过函数计算就可以将其包装成新的技术服务,无需额外部署负载均衡的能力,服务端渲染采用的接受度更强,渲染速度也更快。其次是批量任务。通过在函数内编写批量处理逻辑,再通过函数工作流实现多个批量逻辑的组合。
以文本批量核对为例,通过函数计算实现文本核对资源弹性化,可以抽取共性的数据获取、数据加工等关键文本核对步骤为函数,实现弹性执行。另外,还能实现定时或Kafka消息触发的方式触文本核对任务执行等。
数据库安装场景是另一个实例。使用函数计算运行agent 直接连接节点进行数据库更新,还能利用Kafka触发器进行事件触发执行,同时在投产高峰期,可以实现多个agent函数实例同时运行。
第三个场景是模型发布。项目经理可以将训练好的模型通过函数计算快速发布提供服务,如RAS智能基金组合回测模型。
针对工商银行千人千面的基金组合策略,借助在线能力支撑准实时的回测十分关键,这就需要频繁且快速的模型发布。通过将基金组合回测模型迁移到函数计算平台,可以对线上直接发布的不同种类的模型进行计算,从而展现及时的结果。
周文泽认为 Serverless目前更适合作为微服务的一种补充技术体系,多用于相对独立、架构简单的业务应用。为了打造更为完善的金融云平台,工商银行还将不断优化Serverless 函数计算平台,加快业务函数构建。
比如,统一BaaS服务接口规范,形成通用接口,运用多种云原生Java技术解决 Serverless场景下启动缓慢的问题,推进Serverless CloudIDE 建设,支付相对复杂的应用程序开发,且最大程度保持现有开发人员使用IDEA 的开发习惯等等。
面向未来,工商银行将从开发、运行层面,为应用提供更友好的开发体验,更快的启动速度,增加业务应用的对产品的接受度,不断增强金融级云平台的服务能力。而百度智能云也将持续优化Serverless 函数计算产品,让企业真正享受到云计算带来的弹性、灵活和低成本优势,助力企业实现数字化转型和智能化转型,为客户持续赋能。