第06课:服务网关

Posted lynnlovemin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第06课:服务网关相关的知识,希望对你有一定的参考价值。

本文,我们将学习 Spring Cloud的另一个组件:zuul,它提供微服务的网关功能,即中转站,通过它提供的接口,可以转发不同的服务。在学习 zuul 之前,我们先接着上一篇的代码,来看看服务提供者是如何提供服务的。

在服务提供者的 module 下创建 HelloController 类,添加内容如下:

@RestController
public class HelloController 

    @RequestMapping("index")
    public String index()
        return "Hello World!";
    

然后分别启动服务注册中心和服务提供者,浏览器输入:http://localhost:8762/index,即可看见如下画面:

在实际的项目中,一个项目可能会包含很多个服务,每个服务的端口和 IP 都可能不一样。那么,如果我们以这种形式提供接口给外部调用,代价是非常大的。从安全性上考虑,系统对外提供的接口应该进行合法性校验,防止非法请求,如果按照这种形式,那每个服务都要写一遍校验规则,维护起来也很麻烦。

这个时候,我们需要统一的入口,接口地址全部由该入口进入,而服务只部署在局域网内供这个统一的入口调用,这个入口就是我们通常说的服务网关。

Spring Cloud 给我们提供了这样一个解决方案,那就是 zuul,

以上是关于第06课:服务网关的主要内容,如果未能解决你的问题,请参考以下文章

第11课--11_04_Linux网络配置之四 ifconfig及ip命令详解

微服务网关常用限流算法

第6课.网络编程

SpringCloud:服务网关zuul-API网关

LR12.53—第2课:准备脚本重播

第005课 - 项目微服务划分图