api-gateway实践(15)API网关的待改进点 20171207
2017-12-07 10:40
489 查看
一、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实践(01)服务网关 - 原型功能
- api-gateway实践(10)新服务网关 - OpenID Connect
- api-gateway实践(02)新服务网关 - 运行环境
- api-gateway实践(13)新服务网关 - 断路保护/熔断机制
- api-gateway实践(08)新服务网关 - 云端发布和日志查看
- api-gateway实践(05)新网关工作 - 缓存定义
- api-gateway实践(15)3.6JL分支和3.7并行改造需求
- api-gateway实践(03)新服务网关 - 网关请求拦截检查
- api-gateway实践(07)新服务网关 - 手动发布
- api-gateway实践(04)新服务网关 - 新手入门
- api-gateway实践(06)新服务网关 - 请求监控
- 一个创业公司的API网关落地实践
- 浅谈API网关(API Gateway)如何承载API经济生态链
- 分布式服务框架-原理与实践:15---服务降级[展示API]-学习笔记
- 来自京东、唯品会对微服务编排、API网关、持续集成的实践分享(上)
- 来自京东、宅急送对微服务编排、API网关、持续集成的实践分享(下)
- api-gateway实践(14)前端签名密钥和后端签名密钥
- api-gateway实践(09)支持rest服务注册
- 一个创业公司的API网关落地实践
- 阿里云API网关(15)监控预警