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网关没问题了。

相关推荐
逝水无殇1 小时前
C# 异常处理详解
开发语言·后端·c#
考虑考虑3 小时前
Sentinel安装
java·后端·微服务
IT_陈寒3 小时前
SpringBoot自动配置失灵?你可能忘了这个关键注解
前端·人工智能·后端
碎碎念_4923 小时前
SpringBoot + Vue 前后端分离从 0 到 1 完整环境配置流程
vue.js·spring boot·后端
逝水无殇4 小时前
C# 文件的输入与输出详解
开发语言·数据库·后端·c#
YIAN4 小时前
从手写 Agent 工具到 MCP 协议:一文搞懂大模型跨进程跨语言工具调用
后端·agent·mcp
小兔崽子去哪了5 小时前
Docker 删除镜像后磁盘空间没有释放?
后端·docker·容器
高明珠5 小时前
麒麟 V10 SP1 排查实录:ttyS5 每 10 秒莫名收到一批报文,元凶是 eGTouchD
后端
卷无止境5 小时前
Python FFI 技术深度解析:ctypes、cffi 与 pybind11 的性能差异与实践挑战
后端·python
ServBay5 小时前
AI Gateway 是什么?为什么每个平台都在做
后端·aigc·ai编程