1.为什么要用网关?它解决了什么问题?
当我们的微服务越来越多的时候,这时候网关就起到了统筹全局的作用,可以指挥所有的微服务。
解决的问题:
1.统一入口:为全部微服务提供唯一入口点,网关起到外部和内部隔离,保障了后台服务的安全性。
2.鉴权校验:识别每个请求的权限,拒绝不符合要求的请求。
3.动态路由:动态的将请求路由到不同的后端集群中。
4.减少客户端与服务的耦合,服务可以独立发展,通过网关层来做映射。
简单的网关例子
首先建一个项目,这是项目的目录结构:
在pom文件中加入依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zuul</artifactId>
</dependency>
配置文件中的代码:
spring.application.name=zull-gateway
server.port=9010
eureka.client.serviceUrl.defaultZone=http://user:test@eureka2:8762/eureka/,http://user:test@eureka1:8761/eureka/
eureka.instance.