问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

【分享】什么是API网关?大公司为什么都有API网关?

发布网友 发布时间:2022-12-12 23:57

我来回答

1个回答

热心网友 时间:2024-05-30 21:42

在这篇文章中将我们一起来探讨当前的API网关的作用。
一、API网关的用处
API网关我的分析中会用到以下三种场景。

二、API网关在企业整体架构中的地位
一个企业随着信息系统复杂度的提高,必然出现外部合作伙伴应用、企业自身的公网应用、企业内网应用等,在架构上应该将这三种应用区别开,三种应用的安排级别、访问方式也不一样。
因此在我的设计中将这三种应用分别用不同的网关进行API管理,分别是:API网关(OpenAPI合伙伙伴应用)、API网关(内部应用)、API网关(内部公网应用)。

三、企业中在如何应用API网关
1、对于OpenAPI使用的API网关来说,一般合作伙伴要以应用的形式接入到OpenAPI平台,合作伙伴需要到 OpenAPI平台申请应用。
因此在OpenAPI网关之外,需要有一个面向合作伙伴的使用的平台用于合作伙伴,这就要求OpenAPI网关需要提供API给这个用户平台进行访问。
如下架构:

当然如果是在简单的场景下,可能并不需要提供一个面向合作伙伴的门户,只需要由公司的运营人员直接添加合作伙伴应用id/密钥等,这种情况下也就不需要合作伙伴门户子系统。
2、对于内网的API网关,在起到的作用上来说可以认为是微服务网关,也可以认为是内网的API服务治理平台。
当企业将所有的应用使用微服务的架构管理起来,那么API网关就起到了微服务网关的作用。
而当企业只是将系统与系统之间的调用使用rest api的方式进行访问时使用API网关对调用进行管理,那么API网关起到的就是API服务治理的作用。
架构参考如下:

3、对于公司内部公网应用(如APP、公司的网站),如果管理上比较细致,在架构上是可能由独立的API网关来处理这部分内部公网应用,如果想比较简单的处理,也可以是使用面向合作伙伴的API网关。
如果使用独立的API网关,有以下的好处:
• 面向合作伙伴和面向公司主体业务的优先级不一样,不同的API网关可以做到业务影响的隔离。
• 内部API使用的管理流程和面向合作伙伴的管理流程可能不一样。
• 内部的API在功能扩展等方面的需求一般会大于OpenAPI对于功能的要求。
基于以上的分析,如果公司有能力,那么还是建议分开使用合作伙伴OPEN API网关和内部公网应用网关。

四、API网关解决方案
私有云解决方案如下:
• Kong是基于Nginx+Lua进行二次开发的方案
https://konghq.com/
• Eolinker和Kong比较接近,但是因为是国内公司开发的,后续的技术支持和培训比较友好。
https://www.eolinker.com
• Netflix Zuul,zuul是spring cloud的一个推荐组件, https://github.com/Netflix/zuul
• orange,这个开源程序也是国人开发的,不过这个是个人开发不是公司。
http://orange.sumory.com/
公有云解决方案:
• Amazon API Gateway, https://aws.amazon.com/cn/api-gateway/
• 阿里云API网关, https://www.aliyun.com/proct/apigateway/
• 腾讯云API网关, https://cloud.tencent.com/proct/apigateway
自开发解决方案:
• 基于Nginx+Lua+ OpenResty的方案,可以看到Eolinker,Kong,orange都是基于这个方案。
• 基于Netty、非阻塞IO模型。通过网上搜索可以看到国内的宜人贷等一些公司是基于这种方案。
• 基于Node.js的方案。这种方案是应用了Node.js天生的非阻塞的特性。
• 基于java Servlet的方案。zuul基于的就是这种方案,这种方案的效率不高,这也是zuul总是被诟病的原因。
五、企业怎么选择API网关
现在的亚马逊、阿里、腾讯云都在提供基础公有云的API网关,当然这些网关的基础功能肯定是没有问题,但是二次开发,扩展功能、监控功能可能就不能满足部分用户的定制需求了。
另外很多企业因为自身信息安全的原因,不能使用*公有网的API网关服务,这样就只有选择私有云的方案了。
在需求上如果基于公有云的API网关只能做到由内部人员为*人员申请应用,无法做到定制的合作伙伴门户,这也不适合于部分企业的需求。
如果作为微服务网关,大多数情况下是希望网关服务器和服务提供方服务器是要在内网的,在这里情况下也只有私有云的API网关才能满足需求。
综合上面的分析,基础公有云的API网关只有满足一部分简单客户的需求,对于很多企业来说私有云的API网关才是正确的选择。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
你家的水龙头起泡器该换了 如何打开水龙头起泡器 网上卖门锁,安装如何解决 广告装潢需要哪些设备 广告制作需要哪些材料 开锦旗招牌广告制做店须要什么 广告店需要哪些耗材 长安之星发动机水泵要坏之前声音怎么判断 家有孕妇咋调理:280天贴心呵护生健康宝贝图书信息 哪些是适合孕妇看的书 ...被别人掌控梦见家人命运被别人掌控 梦见自己和同学被叫起一个莫 ... 梦见桃树是什么意思 梦见桃树有什么意思 为什么我的电话卡不用也停机了! 华为手机手写板背景怎么设置透明色 梦到自己挺着大肚子 户口本上生日写错是否能改 户口本上生日错了可以改吗 户口本上出生日期能改吗? 户口本上的出生日期可以改吗 《玉骨遥》有苏摩戏份吗? 新农原生农业鲜果现状 台灯用节能灯对视力有害吗 工伤认定工伤鉴定伤残还需要做吗 老板通过第三方买的工伤保险,还要去劳动局做工伤认定吗? 保险理赔还要工伤认定吗 手机为什么会按键失灵? 华为手机在苏宁网店买了还没有半个月,发现手机电池有问题,去哪里... 生肖属虎本周运势(2021年11月08日-11月14日) 生肖属虎本周运势(2021年11月22日-11月28日) 苏宁新买的手机,电池待机时间只有一天,能换么/ 苹果13没有微距功能吗 苹果13promax有微距吗? 做红烧肉中途水不够了怎么办 做红烧肉中途可以加水吗? 抖音长按评论出现表情怎么关 用和(差)角公式求下列各式的值:(1)sin70°cos25°-sin20°sin25°... 和差角公式 伪人歌词 伪人歌词是什么 有一首粤语歌 男唱的 高潮好像有我愿意牺牲 歌词还有我有缺陷……可否... 伪人是什么意思 美国伪人是什么 伪人第三形态是什么 伪人师表的意思是什么 路由器一直在闪红灯没网怎么办? 小米cv手机有没有carwith系统 carwith什么时候适配大众汽车 小米carwith能下载安装包在车机上安装吗 虚拟机与宿主机之间使用同一个网段方法 法律,婚礼策划师有假期吗 关于五月相识的诗句 EXCLE 宏病毒怎么去除呀?用360杀毒显示已隔离,但打开提示这个。表格发到...