
微服务
API网关作为微服务中南北向通道,需要具有以下功能:统一身份认证、权限校验、动态路由、协议转换、限流、熔断等技术。
Make Dream Happen
多年运维开发经验,擅长容器、自动化技术,全栈架构师。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
微服务-API网关-负载均衡
外部负载均衡外部指的是API网关所管辖的微服务,这些微服务如果部署的是单实例,那么如果发生故障了,服务就不可用了。那么如何解决这个问题呢?做高可用有两种方式:HA:主服务和备用服务,只有在主服务挂了的时候备用服务才能顶上。LoadBalancer: 负载均衡,多个服务实例按照某种策略被轮着访问。我们在这里采用负载均衡的方式,说到负载均衡,你可能想到了Nginx、Apache、Haproxy,没错,这些都可以作为负载均衡器,但是我给各位的建议是尽量避免惯性思维。为什么这么说呢?就负载均衡本身原创 2020-08-26 18:06:27 · 5121 阅读 · 0 评论 -
微服务-API网关-协议转换(泛化调用)
RPC和REST的区别REST和RPC是两种通讯方式,并不是协议,这一点大家要注意。REST是基于HTTP协议的,而RPC可以基于HTTP协议来实现,也可以通过TCP协议来实现。业界普遍采用的做法是,内部系统之间调用用 RPC,对外用 REST,因为内部系统之间可能调用很频繁,需要 RPC 的高性能支撑。对外用 REST 更易理解,更通用些。API网关内部和外部通讯方式在进行协议转换前我们要先思考一个问题,从什么协议转成什么协议呢?我们说的协议转换是把客户端的请求协议转为微服务内部的接口协议,处原创 2020-08-26 18:03:45 · 7310 阅读 · 1 评论 -
微服务-API网关-熔断降级
介绍在微服务架构中,各个服务之间往往是级联在一起的,一个服务发生故障时可能会造成以下灾难:服务依赖方调用超时,导致任务队列打满,引起链式反应,最终导致整个集群雪崩。服务依赖方调用返回失败,引起链式反应,最终导致整个集群不可用。所以需要在微服务不可用时切断故障服务与其他服务的通讯。熔断是对服务提供者说的,由于某些原因(比如网络不通、服务挂了、请求处理不过来)造成服务提供者不能提供服务时,服务提供者就需要切断和服务调用者的连接,不然就造成资源浪费或者队列打满,从而导致链式反应。降级是对服务调用者原创 2020-08-26 18:00:36 · 5233 阅读 · 0 评论 -
微服务-API网关-限流
限流介绍我们在API网关中已经介绍了,限流是保护网关的手段之一,和身份认证以及鉴权一起组成安全防御大闸。其目的是对并发请求进行限速或限制一个时间窗口内请求的数量, 一旦达到阈值就排队等待或降级甚至拒绝服务。为啥要做限流在API网关接受的请求量超过了最大处理能力后,网关就会出现问题,不能在正常提供服务,所以要限流。为了防止其他人通过DDOS恶意攻击网关。某些API处理时很消耗系统资源,频繁的调用会造成系统瘫痪,所以要控制这些API接口的调用频率。在API网关是面对公司外部使用的情况下,通过限制A原创 2020-08-26 17:57:16 · 1597 阅读 · 0 评论 -
微服务-API网关-权限控制
API网关-权限控制权限控制介绍权限控制是一个古老的话题,你可能会想有没有什么权限设计方案可以满足所有的应用场景呢?答案是没有,就像几乎所有问题一样,没有一种系统可以解决所有情况的,我们需要根据不同的场景和需求来设计不同的系统。权限控制主要设计用户、角色、组、对象、操作、权限等对象。下面我先对这些对象做些解释,让大家先有个概念。然后我们再说说业界有哪些比较优秀的权限控制设计方案。名词解释用户发起操作的主体。角色对于用户的抽象概念,类似于用户的属性,比如管理员就是一个角色。组可以是用户组原创 2020-08-18 19:32:19 · 6421 阅读 · 0 评论 -
微服务-API网关-身份验证
API网关-身份验证身份验证介绍身份验证通常是进入系统的第一道大闸,要求用户出具登录此系统的身份证明。其实在实际情况下,很多人开发的系统都没有身份验证功能或者就只有普通用户名和密码验证功能,这样的系统其实都是不完善的,也是不符合安全标准的,所以作为这么大众化的系统,我们有必要做详细的学习和了解。##身份验证分类对于身份验证,我们分两种情况来看待,界面登录验证和接口调用验证,这两种方式所使用的身份验证方法很多时候是不一样的。界面登录验证指用户通过前端(包含浏览器端和移动端)来进入系统,用户一旦登原创 2020-08-18 19:25:49 · 4498 阅读 · 5 评论 -
微服务-API网关-整体架构思考
API网关API网关介绍API网关这个东西的提出其实已经有些年头了,以前主要是运用在开放平台这样的对外提供接口服务的部门,随着微服务概念越来越深入人心,API网关也越发的流行了。现在各个部门都可以把自己的服务通过API网关暴露给其他部门或者公司外部使用,和Service Mesh一起作为微服务管理的标准解决方案。API网关就是进入各个服务的统一入口,API网关里面管理着一堆微服务,外面的客户端想要访问里面的微服务就需要先通过API网关,然后API网关对请求处理之后再发送到各个微服务中去,微服务处理完原创 2020-08-18 18:59:13 · 931 阅读 · 0 评论