前言
在上一篇我们聊了下zuul作为微服务网关的简单使用,本节继续探讨一下微服务中的另一个网关Gateway
为什么使用Gateway
既然zuul已经提供了很强大而且灵活的网关功能了,为什么还要考虑Gateway呢?这个问题成为很多技术选型者的苦恼,其实这个很好解释,Gateway作为后出来的新一代网关,在功能吸收了zuul的基础上,底层做了更多的优化,并扩展了zuul的功能,最为核心的是,Gateway的底层通信采用了异步非阻塞的netty,相比目前的zuul的1.X版本,这个优势是明显的,可能因为这一点导致了Gateway成为技术选型的热门原因吧
让我们用一张图来概括一下Netty在Gateway组件中的位置
Client发起请求到服务网关之后,由NettyRoutingFilter底层的HttpClient(也是Netty组件)向服务发起调用,调用结束后的Response由NettyResponseFilter再回传给客户端。有了Netty的加持,网络请求效率大幅提升