高效管理近 2 万个 API,中金财富是如何做到的?

图片

为引导安全的 API 治理,中国信息通信研究院云计算开源产业联盟近期整理并发布了《API 治理应用案例汇编(2023)》。此次征集中,Eolink 参与共建的三大项目入选金融行业示范案是入选项目最多的企业,充分体现官方对 Eolink 在金融行业市场地位的权威认可。

本期,我们给大家带来的是 Eolink 与中国中金财富证券有限公司落地的 API 治理最佳实践案例分享。

图片

中国中金财富证券有限公司(中金财富),原中国建银投资证券有限责任公司,于 2005年成立,2008年由中央汇金投资有限责任公司全股权接管,并于 2017年成为中国国际金融股份有限公司的全资子公司。2019年更名为中金财富,是国内值得信赖的一流财富管理机构。

作为中金公司的财富管理业务平台,中金财富旨在全面推进敏捷的数字化转型,支持财富管理业务的发展和创新,提升与客户的数字化交互,并扩大数据驱动应用的规模,积极实现用户运营的智能化。致力于提供投资解决方案,符合客户生活目标的需求,以客户为中心,通过专业的投资顾问团队和敏捷创新的金融科技平台提供国际水准的产品和解决方案。

中金财富历年来屡获荣誉,包括 2017、2018年的《证券时报》“中国财富管理品牌君鼎奖”,2019年的《亚洲货币》“年度最佳财富管理券商”,2022年的《财联社》“最佳金融科技创新奖”以及 2023年的《每日经济新闻》“最具金融科技实力券商奖”等等,在 2021 年更是荣获人行金融科技发展进步奖。

图片

在公司数字化转型的大背景下,越来越多的数据和应用正在被迁移至云端,微服务架构也正在成为构建业务的第一选择,API 作为其中交互的核心部分,自然成为企业数字化转型的关注重点。

中金财富金融科技一直践行敏捷开发理念,充分释放金融科技动能助推公司数字化转型发展,如何科学合理的管理 API 即变成了一大重要挑战。为应对这一挑战,公司内部迫切需要一种先进的工具来对 API 全生命周期进行管理和标准化,以便更好地满足业务需要和提升研发效率,帮助公司层面能更有效管理和协调 API 数字资产。

2023年初,中金财富信息技术部开始制定公司级 API 技术规范和治理规范,目前已初步搭建度量体系,并将 API 治理作为重要一环纳入企业整体技术架构治理工作中。为实现这一目标,由信息技术部牵头,与业内领先的 API 全生命周期解决方案厂商(Eolink)联合构建一站式 API 管理与协作平台,目前完成一期落地,实现中金财富内部 API 项目有效管理。

治理难点

  • ⚠️ API 管理难,API 资产无法统一维护

缺乏统一好用的 API 管理平台,各项目 API 的管理比较粗糙和混乱,采用不同的文档工具管理 API,没有形成 API 使用管理统一范式,整体水平层次不齐,无法实现公司级的 API 管理,导致公司的 API 资产管理难,协作平台统一难,各角色各团队协作难的三难问题。

  • ⚠️ API 文档不规范,团队理解成本高

API 管理协作需要编写详细的文档来描述 API 的使用方式和接口规范,但开发人员各自按照自己的习惯编写文档,文档的阅读理解成本非常重,内部建设的 API 接口定义规范缺乏校验工具,难以落地推广。

  • ⚠️ API 文档更新滞后、团队需反复沟通

内部分享 API 文档主要靠离线文档的方式传递,API 项目不同版本也主要靠人通过离线文档维护,文档变更后通过会议或口头传递的方式进行沟通,无法及时让团队实时获取变更信息,导致和实际的 API 接口不一致,在实际的研发过程中,需要不断反复确认沟通,导致研发团队开发效率降低,也降低了 API 使用的效率。

  • ⚠️ API 项目共享、使用情况无从做统计管理

在业务开展过程中,部分 API 项目需要进行对外分享以及提供给其他团队去进行调用,以满足跨团队协作共享,目前主要通过离线文档的方式传递,没法做到分享之后可以直接在线测试,API 调试成本高;另外也无法进行项目分享情况的统计,如哪些项目被分享调用得更多,哪些 API 是有需要改进的,分享的数量情况等。

核心需求

  • 🏆 支持全面且灵活的的权限管理

中金内部项目权限管控非常严格,需要 API 平台支持公司-部门-团队-项目等不同级别的不同角色的权限管控,包括不仅限于管理员,可读可编辑、自定义权限角色等。

  • 💻 支持常见行业 API 协议接口管理

支持 Tars、恒生、中焯等金融行业常见系统的 API 协议接口管理。

  • ✅ 支持 API 数据的多种导入/生成方式

中金内部有庞大的存量 API 数据存放在不同平台,需要支持代码注解、其他平台的导入方式,降低数据迁移成本。

  • 📢 提供及时的 API 变更通知

研发流程涉及产品经理、前后端、测试等人员,API 在设计、开发,对接,测试等阶段需要支持变更通知、评论等功能,接口变更消息及时通过企业微信工具发送变更通知,涉及变更成员可以快速修改文档及接口代码,降低团队协作的耦合度。

  • 🚀 支持项目级版本管理

提供对项目级别的版本管理,可以进行项目对比以便于后续查看每次迭代产生变更的差异,高效对比版本变更,如 API 有没有产生变化,产生变化的内容,并支持快速切换版本。

  • 🛒 支持 API Hub 共享平台

支持企业级别多系统间接口开放平台,以视图或者分享方式将团队内部项目展示出来,供其他团队或者第三方团队调用接口,减少重复研发造成的浪费。

图片

为了解决 API 管理的问题,中金财富采用了 Eolink Apikit API 接口管理工具,并结合内部需求开发建设,通过该平台实现统一 API 管理平台、API 资产管理,API 资产开放的目标。

1、上线统一的 API 管理平台建立内部项目管控体系

通过平台设置内控管理,建立起组织内部不同 API 的权限管控,为实现 API 统一平台管理奠定基础。将已有存量 API 传统文档进行了梳理,再进行平台数字化处理。

Java 通过代码的注解生成 API 文档,生成的 API 文档不全,则完善注解之后再重新生成。如果非 Java 语言的,则通过其他工具转换为 Postman 等格式再导入到 Eolink 里面,完成 API 资产文档的迁移及统一管理、监控。

图片

2、构建企业内部 API 接口的规范化与模板化

根据 API 接口设计契约化、重用性、幂等性、事务最终一致性、可管控、可监控原则,通过征求内部意见,设立内部的 API 接口规范。

同时,在 API 管理平台上建立 API 接口模板,不仅提高设计 API 文档的效率,也帮助公司统⼀规范了接口的开发方式,提高代码质量,减少出错概率,降低维护成本。

3、实现接口在线评审推动团队协作效率提升

借助 API 管理平台的评论、变更通知触发功能,在线即可完成接口评审。根据不同角色,平台支持配置状态流转时的通知,状态流转到对接,前端可以和后端联调,流转到完成,测试人员可以执行测试用例,验证功能。

接口设计、评审完成后后端、前端均可以并行完成各自的工作,前端开发人员可以选择 Mock 进行测试,测试人员就可以开始编写接口规范性的用例,无需相互等待,有效提高团队协作效率。

4、筑就企业 API 开放阵地实现 API 资源的高效利用

内部建立了 API 开放平台,内部项目可经过内部审批之后开放,开放出来的 API 项目可被订阅、克隆使用,中金财富现已在开放平台开放了如“客户触达“ "协同办公” “人工智能” “交易系统” “信息安全” “客户信息”等多种分类的 API 接口,初步形成 API 内部资产开放,API 利用率提高。

图片

自第一期项目上线以来,已经接入 100+ 项目,目前在管理的 API 近两万个,共享 API 项目 20+ 个

有效提升内部数据和服务管理的能力。将原本分散在 Word、Excel、Swagger 等不同工具/平台的接口信息统一采集在接口管理平台中,管理人员可以了解各个系统的接口统计信息(包括 API 的数量/分布/使用情况等)以及项目的质量情况。

加强敏捷组织协同,接口开发更为敏捷。公司各团队可以使用同一个平台进行开发协作,并基于内部的 API 接口文档规范,通过平台快速设计、开发、测试和对接接口,改善了繁琐重复的文档沟通协作问题,使团队精力更加专注在了 API 研发上,极大降低了团队沟通协作的成本。

实现了公司 API 的开放共享。公司内部的系统 API 借助内部开放平台共享共建,实现多种层级、一键式的文档分享,减少不同团队建设重复的 API,减少资源浪费,同时统一规范和接入源,助力保障研发质量安全,为公司敏捷数字化开发模式奠定工具基础。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/336262.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机视觉技术-区域卷积神经网络(R-CNN)

区域卷积神经网络(region-based CNN或regions with CNN features,R-CNN) (Girshick et al., 2014)也是将深度模型应用于目标检测的开创性工作之一。 本节将介绍R-CNN及其一系列改进方法:快速的R-CNN(Fast R-CNN&#x…

构建自己的私人GPT-支持中文

上一篇已经讲解了如何构建自己的私人GPT,这一篇主要讲如何让GPT支持中文。 privateGPT 本地部署目前只支持基于llama.cpp 的 gguf格式模型,GGUF 是 llama.cpp 团队于 2023 年 8 月 21 日推出的一种新格式。它是 GGML 的替代品,llama.cpp 不再…

控制el-table的列显示隐藏

控制el-table的列显示隐藏,一般的话可以通过循环来实现,但是假如业务及页面比较复杂的话,list数组循环并不好用。 在我们的页面中el-table-column是固定的,因为现在是对现有的进行维护和迭代更新。 对需要控制列显示隐藏的页面进…

微信Windows版如何从旧电脑迁移聊天记录到新电脑

我们都知道,换手机的话,如果是同品牌,可以用该品牌的换机助手将微信资料传输给新手机,或者用微信PC端的迁移与备份功能来实现 那么换电脑或者重装系统呢?我们可以通过转移文件夹的方式进行 1、登录PC微信,…

SG-8101CGA 系列 (晶体振荡器 可编程 可用 +125°C )

SG-8101CGA是可编程晶体振荡器,具有CMOS输出,适用于汽车,同时,该系列还提供相同的频率和其他参数的轻松编程能力,符合AEC-Q100标准,具有出色的电磁兼容性和稳定性,可以在各种环境下使用。外部尺…

ELK生命周期

ELKkafka <es生命周期可视化配置界面> 一、创建索引模式 根据logstash中的日志规则 匹配对应系统日志 二、创建索引生命周期策略&#xff1a;可以控制生成索引的生命周期 共4个阶段&#xff1a;热阶段——温阶段——冷阶段——删除阶段 阶段1. hot: 索引被频繁写入和查…

Python - 深夜数据结构与算法之 Two-Ended BFS

目录 一.引言 二.双向 BFS 简介 1.双向遍历示例 2.搜索模版回顾 三.经典算法实战 1.Word-Ladder [127] 2.Min-Gen-Mutation [433] 四.总结 一.引言 DFS、BFS 是常见的初级搜索方式&#xff0c;为了提高搜索效率&#xff0c;衍生了剪枝、双向 BFS 以及 A* 即启发式搜索…

基于ZU19EG的100G-UDP解决方案

概述 本文档介绍ZU19EG与Mellanox CX6 100G网卡通信解决方案。 环境配置 FPGA硬件&#xff1a;519-ZU19EG的4路100G光纤PCIe加上计算卡 电脑&#xff1a;国产国鑫主板&#xff08;双PCU&#xff09;&#xff1a;Gooxi G2DA-B CPU:Intel Xeon Silver 2.2GHz 内存&#xff1…

旋变检测AD2s1205手册学习笔记

旋变故障检测故障表 信号丢失检测 检测原理&#xff1a;任一旋变输入(正弦或余弦)降至指定的LOS正弦/余弦阈值 以下时&#xff0c;器件会检测到信号丢失(LOS)。AD2S1205通过将 监视信号与固定最小值进行比较检测此点 丢失的效果表现&#xff1a;LOS由DOS和LOT引脚均闩锁为逻辑…

MySQL之导入、导出远程备份

一、Navicat工具导入、导出 1.1 导入 第一步&#xff1a; 右键&#xff0c;点击运行SQL文件 第二步&#xff1a; 选择要运行的SQL&#xff0c;点击开始 第三步&#xff1a; 关闭即可 1.2 导出 第一步&#xff1a; 右键选择&#xff0c;导出向导 第二步&#xff1a; 选择SQL脚…

windows下全免费手动搭建php8+mysql8开发环境及可视化工具安装

最近PHP项目少了&#xff0c;一直在研究UE5和Golang&#xff0c;但是考虑到政府、国企未来几年国产化的要求&#xff0c;可能又要重拾PHP。于是近日把用了N年的框架重新更新至适合PHP8.2以上的版本&#xff0c;同时也乘着新装机&#xff0c;再次搭建php和mysql开发环境。本文留…

数据结构:二叉树

目录 1.树的定义 2.二叉树 2.1 满二叉树 2.2 完全二叉树 2.3 二叉搜索树 2.4 平衡二叉搜索树 3.二叉树的存储 3.1 数组存储 3.2 链表存储 代码&#xff1a; 4.二叉树的遍历 4.1 深度优先遍历 4.1.1 递归 4.1.2 迭代 4.2 广度优先遍历(层序遍历) 1.树的定义 树是计…