广告招募

当前位置:中非贸易网 > 技术中心 > 所有分类

技术干货 | API的前世今生

2023年03月19日 14:02:29      来源:上海派拉软件股份有限公司 >> 进入该公司展台      阅读量:5

分享:

\r 最近各个行业都在大谈特谈数字化转型、敏捷、API经济等一些新概念和新名词······ \r

\r

\r \r

\r

\r

\r

\r

\r

话说回来这些新概念都离不开API服务的支撑 \r

\r

一句话表达就是“万变不离其宗” \r

\r

\r API \r

\r

\r 是神马东西 \r

\r

API的英文简称 \r

\r

Application Programming Interface \r

\r

白话文就是终端和计算之间通信的一种方式 \r

\r

\r

\r

说 明 如 下: \r

\r


\r

\r

API提供的是什么服务? \r

\r

API传输了什么数据? \r

\r

可以通过API返回什么信息? \r

\r

API是通过哪种协议发送的? \r

\r

往哪台服务器发送? \r

\r

是否安全? \r

\r


\r

\r

\r

\r

示例图 \r

\r


\r

\r

以前也有API,为什么这么多年都没有火起来呢? \r

\r

毕竟任何事物的发展壮大都需要一个过程。 \r

\r

90年代,业务单体建设年代,必须要大干快上,这种烟囱式建设持续到了21世纪初,大家总觉得哪哪不对劲······ \r

\r


\r

\r

IBM振臂高呼 \r

\r

你们这样搞不行的 \r

\r

我们需要 \r

\r

松耦合、高内聚分布式SOA架构 \r

\r

大家觉得这个高大上,说可以搞, \r

\r

各大500强企业奉若神明 \r

\r


\r

\r

2010年,随着人工智能EI、IOT、公有云、智能制造、微服务架构的不断演进, 依赖API的平台不断更新, 如Web、、 终端等,未来将会出现更多的服务体系。ProgrammableWeb便预测API矢量可达到100,000到200,000,并会不断增长。API开发数量的增加给边缘系统带来机会,大规模的API管理系统成为核心的发展趋势。 \r

\r


\r

\r

传统企业的IT部门迎来了、也是挑战的时代。 \r

\r


\r

\r

最终,企业的销售模式逐步转变,能力变现、 释放数据价值,依托不同的API管理平台创造新的盈利。 \r

\r


\r

\r

随之,API Management应运而生 \r

\r

APIM包含了API网关、API设计、创建、测试、发布、运维、监控的生命周期管理、API portal、API市场、API运营等等功能。 \r

\r


\r

\r

API网关按照功能和类型划分:一种是微服务内部网关,一种是企业级网关。 \r

\r

今天我们主要讨论企业级网关。 \r

\r


\r

\r

企业级网关主要具备以下功能: \r

\r


\r

\r
\r 1、请求路由,版本控制 \r
\r

\r API Gateway 是服务的入口,可以根据不同的请求路由到不同的服务上,也可以在 Gateway 上进行路由的版本控制,这样即使后服务发生了变化,Gateway 的路径依然可以不改变。 \r

\r \r
\r 2、用户登录,权限认证 \r
\r
\r

\r 客户端在与我们后端服务进行交互之前,需要*行登录鉴权操作,这是后端所有的服务都需要有的共有逻辑,因此在 Gateway 做这个事情就再合适不过。 \r

\r \r
\r 3、数据聚合 \r
\r
\r

\r 由于不同的客户端往往需要的数据不同,而这些数据又是不同的 service 提供的,比如上面提到的查看一个商品详情页,我们可能需要同时从商品服务,库存服务,评价服务等中拉取信息,我们可以借助 Gateway 方便完成来自不同 service 的数据聚合。 \r

\r \r
\r 4、协议转换 \r
\r
\r

\r 在我们的实践中,CS(Client to Server)协议和SS(Server to Server)协议是不一样的,为了保证数据传输的可靠性,我们的CS协议会有鉴权以及加密解密的逻辑,而在内部的SS协议则不需要这些逻辑,因此在 Gateway 我们需要有一个协议转换的过程。 \r

\r \r
\r 5、熔断,降级,限流 \r
\r
\r

\r 当监测到某个服务发生异常,或者当服务的流量超过我们服务的承载能力等情况时,我们可以采取相应的措施,对整个系统的容错性、稳定性有很大帮助。 \r

\r \r
\r 6、负载均衡 \r
\r
\r

\r API 网关知道所有服务实例的地址,所以可以根据不同服务采取不同的负载均衡策略。 \r

\r \r
\r 7、灰度发布 \r
\r
\r

\r 有时候我不希望让所有的流量都一次性的到达程序的新版本,因为那个新版本也许并没有测试地很充分。灰度发布允许你直接只导入量的流量到新的版本,API 网关就可以帮你来做这件事情。你可以配置10%的请求到新的版本,然后一旦你确保了新版本没有bug,你可以把流量切换到99%。 \r

\r


\r

\r

\r API 网关总结四大功能: \r

\r
    \r
  • \r

    \r 简化集成 \r

    \r
  • \r
  • \r

    \r 访问控制和安全保护 \r

    \r
  • \r
  • \r

    \r API生命周期管理和BI报表、监控 \r

    \r
  • \r
  • \r

    \r 支持 \r

    \r
  • \r
\r

谈了这么多API相关的功能,那么业界那有没有比较靠谱的产品吗? \r

\r


\r

\r


\r

\r

现在我们来看下开源和商业API产品都是哪些: \r

\r


\r

\r

\r

\r


\r

\r
    \r
  • \r

    \r Kong,四大皆空,才能创建这么好的产品,开源的APIM老大,界面化开发较弱,性能好,扛造。 \r

    \r
  • \r
\r


\r

\r

\r

\r
    \r
  • \r

    \r  CA 国外的和尚,有点水土不服,不过胜在套路多,可VM/docker、功能齐全,安全和访问控制都是杠杠的,国内案例有不少,不过最近博通收购。后面发展有待观察。 \r

    \r
  • \r
\r

\r

\r
    \r
  • \r

    \r APIGEE APIM界大咖,google出品,Gartner魔力象限一,功能、界面、可用性都非常不错,不过只能公有云部署,这和国内企业就无缘了,国内企业较难接受,你说整个本地部署的版本不行吗? \r

    \r
  • \r
\r

\r

\r
    \r
  • \r

    \r Mulesoft API 这家也是国外的产品,ESB出身,功能齐全、界面优化,有大家风范,不过已被Salesforce收购,而且他们对国内市场不太上心。 \r

    \r
  • \r
\r

\r

\r
    \r
  • \r

    \r IBM API 老牌子国外厂商,不过心思好像不在这块。 \r

    \r
  • \r
\r

\r

\r
    \r
  • \r

    \r 国内厂商有很多,不过积累还是相对较少,当然这样说话,容易被打死,不过也有让人眼前一亮的,大家可以找度娘······ \r

    \r
  • \r
\r
\r 心的呼唤 \r
\r

\r 国内产品的成熟度相对于国外还是要晚于三到五年的时间。国内产品需要快速强大起来,在功能、性能、界面、部署模式等方面能与之媲美。 \r

\r

\r 话说回来,派拉软件在这方面可是杠杠的,提供企业API网关专业服务,对API的安全管理进行扩展,更好服务于客户,排的妥妥的! \r

\r

\r \r

版权与免责声明:
1.凡本网注明"来源:中非贸易网"的所有作品,版权均属于兴旺宝装备总站,转载请必须注明兴旺宝装备总站。违反者本网将追究相关法律责任。
2.企业发布的公司新闻、技术文章、资料下载等内容,如涉及侵权、违规遭投诉的,一律由发布企业自行承担责任,本网有权删除内容并追溯责任。
3.本网转载并注明自其它来源的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品来源,并自负版权等法律责任。 4.如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系。