温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

简单了解spring cloud 网关服务

发布时间:2020-09-11 09:27:44 来源:脚本之家 阅读:178 作者:程序员你大爷 栏目:编程语言

微服务 网关服务

网关服务是微服务体系里面重要的一环。

微服务体系内,各个服务之间都会有通用的功能比如说:鉴权、安全、监控、日志、服务调度转发。这些都是可以单独抽象出来做一个服务来处理。所以微服务网关应运而生。其主要作用作为微服务体系里面流量的唯一入口去做一些功能的实现。

微服务的网关担当的主要职责可以分为俩种

  • 主要业务功能抽取,鉴权、安全、服务调度、限流、熔断等
  • 非主要的业务功能抽取,监控、日志、缓存、黑白名单、埋点等

Spring Cloud 网关服务

现在市面主要流行的俩种

  • Netflix Zuul 1.0
    • 由Netflix开源的API网关项目,这个服务并不是Netflix 集成到spring 微服务体系内。而是spring将zuul集成在spring-cloud中使用而已。目前spring不打算集成zuul2.x的集成。
  • Spring Cloud Gataway
    • spring-cloud-Gateway是spring旗下spring-cloud的一个子项目。还有一种说法是因为zuul2连续跳票和zuul1的性能表现不是很理想,所以催生了spring孵化Gateway项目。

前面介绍了俩种网关服务由来,接下来进行一下性能的对比我不打算在做压力测试方向更多的介绍,博主没有做压力测试的条件。我讲推荐一篇博文进行了压测的详细的对比传送门

Spring Cloud Gateway

是基于WebFlux 开发的。WebFlux 模块的名称是 spring-webflux,名称中的 Flux 来源于 Reactor 中的类 Flux。Spring webflux 有一个全新的非堵塞的函数式 Reactive Web 框架,可以用来构建异步的、非堵塞的、事件驱动的服务,在伸缩性方面表现非常好。使用非阻塞API。 Websockets得到支持,Spring集成

Netflix Zuul 1.0

底层是基于servlet,Zuul处理的是http请求Zuul的抽象写的非常简单易懂,易于扩展,易于debug。提供了两种特殊的抽象类,用户使用起来,比较灵活。没有提供异步支持。流控等均由hystrix支持

备注

其实Netflix Zuul 1.0 调优过后的性能指标并不见得比Spring Cloud Gateway 差基本上也符合理论上的数据。
只不过2.0之后。spring 没有打算集成它。如果现有系统已经使用的zuul 服务。不需要非得升级zuul 升级到Spring Cloud Gateway。如果公司项目。希望Websockets得到支持就可以考虑是否升级。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持亿速云。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI