AICon 上海站|90%日程已就绪,解锁Al未来! 了解详情
写点什么

挖掘老旧技术栈的价值,从一个 API 开始

  • 2020-02-10
  • 本文字数:2078 字

    阅读完需:约 7 分钟

挖掘老旧技术栈的价值,从一个API开始

最近,我要给高层展示一些 PPT。我记得有一篇很旧的文档里面有一些东西,我很想把它加进来作为补充。但问题是,找这篇文档就像寻宝一样,我翻遍了各个地方,Syncplicity、Google Drive、各台电脑(笔记本、台式机)、移动硬盘,都没有找到。最后,我在一个多年没用的 Zip Drive 里找到了。


当我把这件事告诉我的一个同事,她笑着给我看了这张图片:



我看呆了,这张图片画的不就是我的“寻宝”过程吗?不过,我觉得它也适合用来描述企业的软件技术栈。在企业里,软件技术层层叠加。很多老旧的技术仍然可以给企业带来价值,不至于过时,但依赖这些技术也给企业带来了很高的成本和技术债务。另一方面,要替换这些技术也存在很高的风险,也需要付出很大的成本。再看看我们现在的公司和客户的架构,它们让我想起了大学时代的地理课,它们看起来就像是地球的剖面图,复杂而又无序。



虽然很多企业在进行数字转型,但它们内部原有的技术和相关数据仍然在为企业提供价值。企业不能只是简单地把这些技术移除掉,毕竟它们是一切的基石。这些技术通常使用的是遗留接口(CORBA、RMI、SOPA,等等)或者是只能通过 SDK 访问的专有接口,甚至是不提供编程接口的封闭式系统。这些技术和数据仍然有用,移动、物联网、大数据、机器学习仍然要用到它们。


那么,我们该怎么挖掘这些技术栈,把深埋在企业技术栈底下的金矿石挖出来?我们该如何释放这些数据的潜力,找到新的商机?

答案是:集成技术!

我们需要的集成技术是能够把底层的东西暴露成服务,或者让原始的数据存储能够很容易被访问到。无论你是要改造遗留接口,还是要现代化数据访问方式,目的都是要能够通过现代化的 API 来访问遗留系统。


遗留系统的集成,就像挖矿一样,把数据从技术栈中抽取出来,让外部可以访问。

API 网关的作用

你可以尝试使用传统的挖煤方法,在地表挖一个竖井,露在地面上的部分是竖井的上半部分,而深入地下的部分从各个地层抽取煤矿(也就是数据的价值)。这是对传统 API 网关的一个比喻。暴露在外面的部分是隔离区(DMZ)的网关,也就是竖井的上半部分。网关暴露了干净、简单易用的 API,外部 API 用户不需要知道系统内部的情况,他们可以直接通过网关创建自己的应用程序或进行集成。这样就降低了技术债务,遗留技术也因此成为 API 经济的一部分。


ESB 的作用

竖井就像是企业服务总线(ESB)。ESB 就像是煤矿的主干,旷工和煤炭通过这个通道被送到地表。ESB 扮演了共享消息主干的角色,将应用程序和其他服务连接在一起。ESB 为企业提供了传输协议、负载和数据的调解器,可以实现各种集成场景。


微服务的作用

另一种方式是把系统改造成微服务架构。正如你所想象的那样,改造成微服务架构是一种极具颠覆性的方式,而且成本不菲。


想要尝试这种转型的公司必须具备足够的运维成熟度。采用微服务架构相当于露天采矿。如果做成了,可以快速获得价值,但你的组织可能会面目全非。组织的敏捷性将得到提升,为了适应 DevOps,文化也会发生变化,团队的组建方式也是根据服务来的。根据康威定律,如果想要改变架构,必须先改变公司的组织结构。



露天采矿给周围的环境留下了一道道疤痕,显然会给人们留下负面的印象。但是,微服务架构不一样。成功采用微服务架构的组织具备了更高的敏捷度和更快的产品推出速度,因为在添加新功能后不需要所有团队重写或重新部署整个应用程序。而且,微服务的代码库越小,就越容易维护。这节省了大量的开发成本,提高了整体的开发效率。最后,因为微服务的成功实施与运维(DevOps)的成熟度有关,所以 CI/CD 管道的速度决定了产品从想法到落地的速度。

iPaaS 的作用

在现今的企业架构领域,我们看到了越来越多的企业采用混合型架构,即本地数据中心和云平台的结合。在自家数据中心内搭建基础设施和部署软件的时代已经过去了。现在的企业可以将云端的技术与已有的传统技术相结合,这种结合是一种集成,而且为了利用本地到云端甚至是云端到本地的集成,出现了新型的“XX 即服务”概念。


我们可以把 iPaaS(Integration Platform as a Service,集成平台即服务)看成是风能发电。风机向现有的基础设施(电网)输送电力,但无法为自己提供足够的电力,所以仍然需要传统电力来驱动,但把二者结合在一起就可以改进整体的发电机能。iPaaS 为本地和云端的技术集成提供了动力。iPaaS 提供了集成模板、映射、转换、调解和通用的云集成模式,它们通常以 API/JSON 为基础。就像电网一样,不同的云之间以及云端和本地端点之间存在轻量级的网关,这些网关就像电网里的变电站。


API 组合工具的作用

在把遗留数据挖出来并暴露成服务之后,还需要对它们进行打磨。打磨的过程就是让 API 变得更加好用、对用户更友好的过程。例如,数据可能需要转换,或者你可能想要为其他服务提供门面。axway API Builder 是一个 API 构建工具,可用于打磨现有 API 和数据源,让它们变得更好用、更友好。


企业里暗藏金矿,可以通过很多不同的技术将其挖掘和提炼出来。“塔尔山里有黄金”,这些黄金可以被挖出来,并为我们带来新的商机。正如我们所看到的,有很多技术可以用来挖掘埋藏在企业里的价值。

原文链接

There’s gold in them thar hills


2020-02-10 14:172288
用户头像
小智 让所有人认同的文字称不上表达

发布了 408 篇内容, 共 396.3 次阅读, 收获喜欢 1984 次。

关注

评论

发布
暂无评论
发现更多内容

不要拿区块链做挡箭牌

CECBC

区块链

断供,危机or契机?开源商业化or社区化?后疫情下的开源路这样走 | 大咖对话

易观大数据

adb的常用操作命令

Yolanda_trying

关于linux操作系统中的buff/cache

程序员架构进阶

Linux cache buffer

数字货币钱包开发费用,区块链钱包开发优势

13530558032

这套JVM核心知识你要全都会,月薪还不过18K可以直接跳槽了

小Q

Java 学习 架构 面试 JVM

两句话给面试官讲清楚IOC

执墨

spring ioc 依赖倒置原则 springioc 控制反转

【乘风破浪的开发者】丁一超:从AI实战营出发探索未知的AI世界

华为云开发者联盟

华为 AI modelarts

数字货币交易所功能,场外OTC交易所开发公司

13530558032

那个小白还没搞懂内存溢出,只能用案例说给他听了

田维常

内存溢出

SQL数据库:CASE表达式

正向成长

CASE表达式

数字货币助力支付体系高效运行

CECBC

金融

架构师第一期作业(第 9 周)

Cheer

作业

#不吐不快# IT职场里的奇葩经历

InfoQ写作社区官方

职场搞笑 奇葩的经历 热门活动

云算力挖矿模式系统开发,云算力平台搭建

13530558032

干货!直观地解释和可视化每个复杂的DataFrame操作

计算机与AI

Python pandas 数据处理

揭秘双11:前端技术体系

大前端

花四个月和阿里面试官“大战”7回合,成功将其“斩于马下”!复盘面试题及答案!

Java架构追梦

Java 阿里巴巴 面试 java架构

覆盖全网的阿里微服务架构有多牛:K8S+实战+笔记+项目教程

Java~~~

Java 程序员 微服务 Spring Cloud 阿里云 K8S

“3+3”看华为云FusionInsight如何引领“数据新基建”持续发展

华为云开发者联盟

数据库 新基建 华为云

《精通lambda表达式:Java多核编程》.pdf

田维常

Lambda

SQL数据库:子查询和关联子查询

正向成长

SQL子查询 SQL关联查询

报告显示国际区块链监管呈三大趋势

CECBC

区块链 货币 监管

程序员求助:腾讯面试题,64匹马8个跑道,多少轮选出最快的四匹

Java架构师迁哥

USDT币支付系统开发搭建,区块链承兑商支付平台

13530558032

牛批!2w字的Java集合框架面试题精华集(2020最新版),赶紧收藏。

Java架构之路

Java 程序员 架构 面试 编程语言

程序员双十一剁手指南

数据君

腾讯云 程序员

Alibaba首发的《Java技术成长笔记》,渴望提升自己的程序员的必备宝典!

Java架构之路

Java 程序员 架构 面试 编程语言

「Spring Boot 2.4 新特性」一键构建Docker镜像

AI乔治

Java Docker 架构

亿级大表分库分表实战总结(万字干货,实战复盘)

学习 编程 架构 计算机网络

即将写入MySQL源码的官方bug解决之路

数据君

MySQL

挖掘老旧技术栈的价值,从一个API开始_架构_David Mckenna_InfoQ精选文章