api-gateway实践(15)API网关的待改进点 20171207
一、API网关能力
API网关负责服务请求路由、组合及协议转换。客户端的所有请求都首先经过API网关,然后由它将请求路由到合适的微服务。
API网关的客户端通过统一的网关接入微服务,在网关层处理所有的非业务功能。
API网关一般提供REST/HTTP的访问API。服务端在网关上注册和管理服务。
API网关的优点:API网关封装了应用程序的内部结构,客户端只需要同网关交互,而不必调用特定的服务。
API网关为每一类客户端提供了特定的API,减少了客户端与应用程序间的交互次数,简化了客户端代码。
API网关的不足:API网关需要单独开发、部署和维护,并支持高可用。为了暴露每个微服务的端点,开发人员必须更新API网关。
API网关的更新过程要尽可能地简单,这很重要。
否则,为了更新网关,开发人员将不得不排队等待。
二、API网关改进点
1、ApiGW 代码解耦合
2、Api列表:希望改成按group列表展示,点击后进入下一级。-魏金雷
回复:市场按分组显示的。服务列表是服务实例列表。
3、监控:待加强,可以从不同用户角度考虑,持续增强
4、分析:待加强,可以从不同用户角度考虑,持续增强7、响应缓存:不支持,可以考虑
5、请求分片与管理:?region?
6、静态响应处理:?缓存?
7、服务发现要随自动扩展和升级而动态变化,API弯管需要使用系统的服务发现机制,可以是服务器端发现,也可以是客户端发现。(如果配置负载均衡地址,可以不考虑?)
8、API目录管理:待加强,如:复制、导入、导出
9、局部失败:熔断已支持!如果产品信息服务无响应,那么API网关应该向客户端返回一个错误信息。
10、身份验证:已支持!
11、负载均衡:已支持,配置集群地址
当需要编辑某个API的定义时,如果该API已经发布,对定义的修改不会对线上产生影响,定义修改后需要再次发布才能把修改后的定义同步到线上环境。
当想要删除某个API,如果该API已经发布,则不允许直接删除API定义,需要先将API下线,然后删除。
提供了复制定义的功能。可以从测试环境/线上环境复制线上的定义覆盖当前的最新定义,然后重新点击编辑进行修改。
三、其他 - 暂不考虑
1、API网关还能为每个客户端提供一个定制的API。通常,它会向移动客户端暴露一个粗粒度的API。
2、API网关可以调用多个微服务并合并结果来处理一个请求。它可以在Web协议(如HTTP与WebSocket)与内部使用的非Web友好协议之间转换。
例如,查询产品详情的场景。
API网关可以提供一个端点(/productdetails?productid=xxx),使移动客户端通过一个请求获取所有的产品详情。
API网关通过调用各个服务(产品信息、推荐、评论等等)并合并结果来处理请求。
3、多种通信机制:如:同步、异步,基于消息?
api-gateway实践(15)API网关的待改进点 20171207的更多相关文章
- 浅谈API网关(API Gateway)如何承载API经济生态链
序言 API经济生态链已经在全球范围覆盖, 绝大多数企业都已经走在数字化转型的道路上,API成为企业连接业务的核心载体, 并产生巨大的盈利空间.快速增长的API规模以及调用量,使得企业IT在架构上.模 ...
- .net core 微服务之Api网关(Api Gateway)
原文:.net core 微服务之Api网关(Api Gateway) 微服务网关目录 1. 微服务引子 2.使用Nginx作为api网关 3.自创api网关(重复轮子) 3.1.构建初始化 3.2. ...
- 分享一个国内首个企业级开源的GO语言网关--GoKu API Gateway
一. 简介 GoKu API Gateway,中文名:悟空API网关,是国内首个开源go语言API网关,帮助企业进行API服务治理与API性能安全维护,为企业数字化赋能. GoKu API Gatew ...
- 几种部署Goku API Gateway的方式,最快一分钟可使用上网关
本文将介绍几种部署Goku API Gateway的方式,最快一分钟可使用上为网关,详情请看全文. 什么是Goku API Gateway? Goku API Gateway (中文名:悟空 API ...
- Why Do Microservices Need an API Gateway?
Why Do Microservices Need an API Gateway? - DZone Integration https://dzone.com/articles/why-do-micr ...
- 详解API Gateway流控实现,揭开ROMA平台高性能秒级流控的技术细节
摘要:ROMA平台的核心系统ROMA Connect源自华为流程IT的集成平台,在华为内部有超过15年的企业业务集成经验. 本文分享自华为云社区<ROMA集成关键技术(1)-API流控技术详解& ...
- Docker安装Kong API Gateway并使用
我最新最全的文章都在南瓜慢说 www.pkslow.com,文章更新也只在官网,欢迎大家来喝茶~~ 1 简介 Kong不是一个简单的产品,本文讲的Kong主要指的是Kong API Gateway,即 ...
- 使用 WSO2 API Manager 管理 Rest API
WSO2 API Manager 简介 随着软件工程的增多,越来越多的软件提供各种不同格式.不同定义的 Rest API 作为资源共享,而由于这些 API 资源的异构性,很难对其进行复用.WSO2 A ...
- 谈谈微服务中的 API 网关(API Gateway)
前言 又是很久没写博客了,最近一段时间换了新工作,比较忙,所以没有抽出来太多的时间写给关注我的粉丝写一些干货了,就有人问我怎么最近没有更新博客了,在这里给大家抱歉. 那么,在本篇文章中,我们就一起来探 ...
随机推荐
- Notepad++ JSON关键字自动提示
Notepad++关键字自动提示 2017-08-31 目录 1 插件安装2 往JSON中加关键字3 智能提示 最近接口测试自动化框架的的case是json格式,用例的json的格式是固定的,定义专门 ...
- Linux系统默认权限之umask
默认情况下,目录权限值为755, 普通文件权限值为644, 那么这个值是由谁规定的,追究其原因是 umask [root@adminx]# vim /etc/profile 1.假设umask值为:0 ...
- eclipse热部署web项目
一.选中JavaEE视图 因为在普通的Java视图下,窗口下方没有server选项卡 二.双击Tomcat 注意:可能很多人当然包括我一开始的时候,都是喜欢右键Tomcat然后Add and remo ...
- IntelliJ IDEA 源值1.5已过时,将在未来所有版本中删除
1. 修改Maven的Settings.xml文件添加如下内容 <profile> <id>jdk-1.8</id> <activation> < ...
- dhcp 的安装和配置文件
install: yum - y install dhcp modify : vim /etc/dhcp/dhcpd.conf ddns-update-style none;ignore cli ...
- 部署openstack的官网文档解读mysql的配置文件
部署openstack的官网文档解读mysql的配置文件(使用与ubutu和centos7等系统) author:headsen chen 2017-10-12 16:57:11 个人原创,严禁转载 ...
- cesium Animation显示系统时间
var d = new Date(); var hour = 0 - d.getTimezoneOffset(); viewer.animation.viewModel.timeFormatter = ...
- Java日志框架:slf4j作用及其实现原理
简单回顾门面模式 slf4j是门面模式的典型应用,因此在讲slf4j前,我们先简单回顾一下门面模式, 门面模式,其核心为外部与一个子系统的通信必须通过一个统一的外观对象进行,使得子系统更易于使用.用一 ...
- Intellij idea操作maven时控制台中文乱码
只留存记录 windows环境下,Intellij idea12中maven操作时,控制台中文乱码问题(编译报错或者clean install时出现的其他错误描述乱码) 在cmd中mvn中文正常显示, ...
- Redis set集合结构及命令详解
set 无序集合 集合的性质: 唯一性,无序性,确定性 注: 在string和link的命令中,可以通过range 来访问string中的某几个字符或某几个元素 但,因为集合的无序性,无法通过下标或范 ...