共计 3113 个字符,预计需要花费 8 分钟才能阅读完成。
金融数字化步履不停,研发效力降级不止
秉“双区”建设之势,怀服务大湾区之志,深圳某大型银行(以下简称“A 银行”)在 2022 年全面开启以数字化转型为方向的第二个五年倒退战略规划新征程。“批发 + 科技 + 生态”能源齐驱,A 银行保持以科技麻利带动业务麻利,一直纵深推动数字化转型与场景经营。
然而,随着 A 银行数字化转型逐步深刻,疾速扩张的 IT 建设团队给多团队治理及跨团队合作带来了全新的挑战,而一直变动的业务需要,也对研发资产的平安管控及研发交付的效率、品质提出了更高的要求。
为了让 IT 建设团队以更麻利的合作、更高效高质的交付应答数字时代的业务需要,A 银行最终从多家厂商中抉择引入 CODING 一站式研效平台,从研发效力降级动手放慢其数字化步调。
CODING 灾备异构计划,保障银行业务连续性
对于金融行业来说,保障用户数据安全以及业务连续性是重中之重。为此,A 银行外部有严格的数据容灾要求:硬件层面满足一份数据三个正本存储,任意一物理节点宕机均不影响平台失常运行应用,同时还要满足不同平台的异构备份。
为了帮忙 A 银行实现基础设施降级,实现其灾备要求,CODING 的专家团队深刻客户现场,最终制订了以 CODING 为基座的容灾及异构备份建设计划。在利用层面上,采纳罗湖(主)- 武汉(备)两地每日定时同步增量数据 ,两地 K8S 集群主节点挂载独立备份存储实现 间断 7 日平台全量数据备份 。同时,行内原有 GitLab 通过 CODING 继续集成流水线, 主动实现定时触发备份,达到异构诉求;备份后果每日推送上报 IM 通信平台,管理人员及时感知。
CODING 为 A 银行制订的容灾及异构备份建设计划
在为 A 银行制订灾备计划的过程中,如果抉择实时同步,会存在以下两个尖利问题:
- 实时同步会导致频繁读写,网络稳定性、平台稳定性难保障,且数据库易锁。
- 从容灾环境切换回生产环境之后,数据一致性难保障。
因而,CODING 专家团队最终决定抉择为 A 银行定时同步备份,备份机每日全量与增量备份,增量同步容灾环境;切换至容灾环境时,全量数据及增量数据备份,再次切换生产环境刷回增量,同时容灾环境备份进行。
通过紧密的切换演练及数据一致性验证,CODING 平台满足 A 银行的高可用建设要求,可能大大 升高源码资产数据失落的危险 , 保障极其状况下代码资产平安。这也为 A 银行开发核心推动各团队应用 CODING 平台托管源码打下松软的根底。
CODING DevSecOps,实现继续平安交付流程闭环
除了满足银行严格的灾备要求,一站式 CODING 研发效力平台给 A 银行带来的价值远不止于此。A 银行比拟重视整体研发流程的体验,始终冀望能更好地管控其研发过程,充分利用自动化带来的便当。通过 CODING,A 银行胜利落地 端到端的 DevSecOps 流程 ,实现代码的对立平安管控,打造了 麻利化、规范化、自动化的继续平安交付闭环,极大晋升了软件交付品质与速度,升高研发老本,实现研发效力降级。
A 银行基于 CODING 落地的 DevSecOps 研发工作流
研发外围资产对立纳管
对于代码仓库的治理,A 银行原先应用了 Git、SVN 等代码版本控制管理工具,源代码扩散在各个项目组,没有对立的治理入口。而 CODING 提供的代码仓库性能,不仅反对 Git、SVN 仓库类型,还反对导入 GitLab、GitHub 等支流类型代码仓库,并提供 仓库分组 、 团队 - 我的项目 - 仓库级别的精细化权限管控 、 代码评审 、 版本治理 等性能,无力撑持 A 银行顺利将散落在各个工具的代码全副迁至 CODING,实现组织代码资产的 对立分布式治理。
除代码资产以外,A 银行还将不同业务线的文档、制品及构建资源对立接入 CODING 平台进行治理。CODING 买通了开发、测试、运维等各个研发环节的资产治理链路,利用一站式的劣势胜利帮忙 A 银行实现资源整合,解决其面临的软件资产治理扩散问题。
研发治理标准对立落地
在未应用 CODING 之前,A 银行外部不足分支治理标准,局部人员间接在骨干分支开发,局部又会拉取分支开发,分支和版本管理混乱。在 CODING 团队的帮忙下,A 银行先后制订适配行内传统单体利用和微服务利用的 Git 分支与标签管理策略,同时建设起对立的代码合并评审流程及追溯审计机制,最终造成 master 骨干分支公布 、feature 个性分支开发 的过程分支管理模式。
A 银行通过骨干 - 分支模型标准跨组织研发过程
骨干环境:部署骨干代码稳固版本,残缺依赖,随时发版,继续爱护和保护。
分支环境:蕴含某个迭代分支波及的单个 / 多个服务,用于联调和测试(这里未独自体现出测试环境,不举荐保护测试分支,采纳 master 骨干进行 daily build,随时可部署环境,用于集成或联调测试环境,提前发现问题)
此外,A 银行发现研发标准很多时候依赖研发人员自觉遵守,不足肯定的约束性。而 CODING 平台提供的研发标准机制 实时反馈标准执行状况 , 主动拦挡不符合要求的研发流动,“无感”地束缚和督促研发人员遵循研发标准。联合行内理论研发诉求,A 银行在代码、分支、版本等方面均配置了对应的束缚规定,并通过减少审核环节,实现品质管控并缩小合作沟通老本。
平安流动融入自动化 CI/CD 流水线
A 银行的 IT 团队长期面临内部竞争与金融监管的双层压力,对业务诉求麻利,对系统谋求稳固。通过 将代码扫描与制品扫描平安能力融入至自动化的 CI/CD 流水线,CODING 帮忙 A 银行晋升业务效率的同时还构建了代码平安品质护城河。
如下图所示,A 银行在 CODING CI 流水线中交融了一系列自动化平安流动。在代码检出时,零碎会主动进行 代码扫描 ,随后进行 单元测试 ,在镜像被推送到 CODING 制品库之后,随之进行 制品扫描。平安流动层层加持,打消了业务公布之前的绝大部分缺点与危险。
CODING 代码扫描反对 16 种 支流开发语言的扫描计划。在设置了扫描语言计划、品质门禁之后,代码检出时会 主动对源代码进行扫描 , 主动生成问题列表 , 并附带批改倡议。
通过问题概览大盘,研发人员能够清晰理解 代码问题数量 、 代码圈复杂度 、 反复率 等状况,极大地帮忙 A 银行及时发现潜藏代码缺点、安全漏洞以及不标准代码,晋升代码的可维护性和稳定性。
在镜像构建并推送到制品库的环节,CODING 制品扫描能力会被主动触发。零碎会对制品进行依赖剖析,解析出制品援用的开源组件,再通过「腾讯平安开源组件破绽特色库 」辨认出制品援用的开源组件存在的破绽,输入破绽报告与修复倡议。A 银行的研发人员能够通过预设的 品质红线 判断制品品质,也可在详情页查看具体扫描后果。
DevSecOps 流水线一键复用
DevSecOps 的疾速推广,单靠反复的人工复制天然是行不通的。得益于 CODING 流水线的 可配置 、 可复用 劣势,A 银行针对行内罕用的研发语言,联合原有脚本,输入了团队内专用的流水线模板,大大降低存量零碎接入 DevSecOps 的门槛。不同业务小组成员 一键即可复用自动化流水线,进步日常研发过程中的构建与公布效率。
研发效力全面晋升,助力推动银行数字化转型
一站式 CODING DevOps 平台的最大劣势,是给 A 银行提供了 对立的研发入口 ,为其 买通从项目管理、代码托管、代码构建、测试、利用交付到零碎运维的研发治理全链路 ,还同时满足了银行严格的灾备异构需要,为 A 银行高效、高质交付业务价值提供了强有力的根底保障。在将来,A 银行会在行内全面推广并利用全新的基于 DevSecOps 的一站式 CODING 平台,充分利用先进的 DevSecOps 理念 让研发链路运行得更顺畅、更高效、更平安。CODING DevSecOps 解决方案,作为 A 银行在数字化转型过程中的强力引擎,将会继续赋能 A 银行优化研发过程体验、专一研发效力晋升,领跑数字化业务新赛道。