网关应该承担什么功能和能力

网关是微服务的入口,所以有很多事情可以在网关做,网关也是所有流量的总入口。是最重要的基础服务。目前总结一下,我们的网关已经实现的功能和还没有实现的功能。

已经实现的功能

  • 网关健康检查逻辑
  • 根据版本号限制访问接口逻辑(接口最低支持的app版本号)
  • 内部接口访问保护逻辑(接口仅仅只暴露给内部服务)
  • 接口权限验证逻辑(接口仅仅只暴露给某些拥有身份的用户)
  • 参数完全透传,不做任何解析(针对第三方格式不统一的接口使用)
  • 维护功能逻辑(针对接口开启维护页面)
  • 解码客户端参数逻辑
  • 唯一请求traceid的接收或者生成
  • 修改请求参数逻辑
  • 用户唯一凭证解析用户id和身份逻辑(通过用户的ticket和确定算法,得到用户的基础信息)
  • 重复请求拒绝逻辑
  • 对外路径和对内路径转换映射逻辑(外部路径:内部路径 == N:1)
  • 记录用户请求真实ip逻辑
  • 访问日志记录逻辑
  • 内部接口审计记录逻辑
  • 前端跨域CORS的设置逻辑
  • 灰度流量请求分发逻辑
  • 接口性能监控和指标度量采集逻辑

未实现的功能

  • 接口和服务限流逻辑
  • 用户和设备禁用逻辑
  • 接口数据缓存逻辑
  • SSL认证逻辑

实现大体方法

  • 网关通过注册中心获取微服务实例
  • 微服务注册到注册中心,并且通过定时push元数据到注册中心
  • 网关定时从注册中心轮训的pull元数据,并且记录在内存中
  • 针对不同的请求,根据所配置的元数据来进行不同的策略
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、微服务介绍 1. 什么是微服务 在介绍微服务时,首先得先理解什么是微服务,顾名思义,微服务得从两个方面去理解,...
    阿南的生活记录阅读 442评论 0 3
  • APIGateway(APIGW/API网关),顾名思义,是出现在系统边界上的一个面向API的、串行集中式的强管控...
    零一间阅读 6,241评论 2 56
  • 捡点前尘三二事,忽然旧物入眸清。惊鸿远影千山暗,沧海微澜一月明。赤焰炉中焚紫玉,绿杨陌上啭黄莺。(寒烟波上转飘萍)...
    烟波徒钓阅读 1,458评论 9 16
  • 今天是参加文案团的第十三天,每天写作的内容都不一样,也一直在找感觉,不过现在是越来越有感觉啦! 会把每天发生的事情...
    子颜论道阅读 301评论 0 0
  • “飞丝”,是我们的方言,指的是在吃东西时因咬到肉而引起皮下出血,瞬间在嘴里长出一个血泡。以前跟朋友在一起吃...
    心田一瓣阅读 6,814评论 5 3