Springcloud从零开始---Zuul(二)

Springcloud从零开始--Eureka-CSDN博客

继上篇Eureka学习网关Zuul

简单说:Zuul,网关,所有的客户端请求通过这个网关访问后台的服务。他可以使用一定的路由配置来判断某一个URL由哪个服务来处理。并从Eureka获取注册的服务来转发请求。

详细说:Zuul是Netflix开源的微服务网关,它可以和Eureka、Ribbon、hystrix等组件配合使用。Zuul的核心是一系列过滤器。这些过滤器完成以下功能:

1 身份认证和安全:识别每个资源的验证要求,并拒绝那些与要求不符的请求。

2 审查与监控:在边缘位置追踪有意义的数据和统计结果,从而带来精确的生产视图。

3 动态路由:动态地将请求路由到不同的后端集群。

4 压力测试:逐渐增加指向集群的流量,以了解性能。

5 负责分配:为每一种负载类型分配对应容量,并弃用超出限定值的请求。

6 静态响应处理:在边缘位置直接建立部分响应,避免其转发到内部集群。

7 多区域弹性:跨越AWS Region进行请求路由,旨在实现ELB(Elastic Load Blancing)使用的多样化,以及让系统的边缘更贴近系统的使用者。

搭建项目学习

第一、继 Springcloud从零开始--Eureka-CSDN博客父项目工程下新建Zuul子项目

1,在Springcloud_study下创建Zuul子模块,选中父工程单击右键New---Module

2,Maven---next

3,添加ArtifactId next

4,一般没改动,这个不用填写,直接finish

Zuul模块成功 建成

5,pom文件添加 zuul及Eureka 客户端(这里添加Eureka客户端是为了后面用Eureka服务端查看Zuule模块信息)依赖

依赖代码

复制代码
<dependencies>
	<!--网关依赖-->
	<dependency>
	    <groupId>org.springframework.cloud</groupId>
	    <artifactId>spring-cloud-starter-netflix-zuul</artifactId>
	</dependency>
	<!--添加eureka客户端-->
	<dependency>
	    <groupId>org.springframework.cloud</groupId>
	    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
	</dependency>
</dependencies>

6,新建Zuul模块配置文件application.yml并配置

新建application.yml

配置代码

复制代码
server:
  port: 8888
spring:
  application:
    name: zuul-study
zuul:
  prefix: /api
eureka:
  client:
    service-url:
      defaultZone: http://localhost:9999/eureka

7,新建ZuulApplication启动类

代码

复制代码
package com.zwj;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.cloud.netflix.zuul.EnableZuulProxy;

@EnableZuulProxy
@EnableEurekaClient
@SpringBootApplication
public class ZuulApplication {

    public static void main(String[] args) {
        SpringApplication.run(ZuulApplication.class, args);
    }
}

8,启动ZuulApplication,单击启动类页面(必须先启动Eureka注册中心后再启动Zuul网关)

启动成功

9,浏览器访问Eureka注册中心地址:http://localhost:8888/

看到zuul-study信息已经被注册到Eureka中心了,说明zuul网关没问题了。

相关推荐
卜夋35 分钟前
Rust 学习笔记 - Day 6: 引用与借用
后端·rust
考虑考虑1 小时前
图片居中
java·后端·java ee
小镇cxy2 小时前
别再把 Git 代理设成全局了
后端
BING_Algorithm2 小时前
Java多线程全体系教程 - 第二篇:Java多线程核心原理·线程安全与锁机制篇
后端
徐志斌2 小时前
Linux 内核与 Zero-Copy 零拷贝
后端
Java编程爱好者2 小时前
Spring-Boot-缓存实战-@Cacheable-这10个坑
后端
沛沛rh453 小时前
用 Rust 实现用户态调试器:mini-debugger项目原理剖析与工程复盘
开发语言·c++·后端·架构·rust·系统架构
消失的旧时光-19433 小时前
Spring Boot + MyBatis 从 0 到 1 跑通查询接口(含全部踩坑)
spring boot·后端·spring·mybatis