所需组件及其功能:
1.eureka—注册中心
使用:
1.服务端添加eureka-server依赖
2.在启动类中添加@EnableEurekaServer
3.在配置文件中配置注册中心地址
4.客户端添加eureka-client依赖
5.在配置文件中配置注册中心地址
2.ribbon—负载均衡
内置了,RestTemplate的使用需要添加@LoadBalanced注解;openfeign内置了直接有负载均衡能力
3.openfeign—远程调用,支持SpringMVC注解。采用JDK动态代理封装了rest请求
1.添加依赖
2.在启动类添加@EnableFeignClients
3.创建远程接口,添加@FeignClient注解
4.hystrix—熔断器
1.添加依赖
2.在启动类添加@EnableCircuitBreaker
3.在需要保护的方法上添加@HystrixCommand 服务保护的手段:服务降级、服务熔断、线程隔离 熔断状态:closed、open—保持5秒、half-open
5.zuul—网关,路由功能
1.添加依赖
2.编写配置
3.过滤器配置
基本pom依赖
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.5.RELEASE</version>
<relativePath/>
</parent>
<groupId>com.yunhe</groupId>
<artifactId>SpringCloudDemo3</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>
<module>eureka-server</module>
</modules>
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>Greenwich.SR1</spring-cloud.version>
<mapper.starter.version>2.1.5</mapper.starter.version>
<mysql.version>8.0.33</mysql.version>
</properties>
<dependencyManagement>
<dependencies>
<!-- springCloud -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${
spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- mybatis驱动 -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
<!-- mysql驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${
mysql.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
</project>
大致结构:

eureka注册中心
所需依赖:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=

本文详细介绍了SpringCloud中的关键组件,包括服务注册与发现(Eureka)、负载均衡(Ribbon&OpenFeign)、熔断器(Hystrix)以及网关(Zuul),展示了它们在分布式系统中的应用和配置方法。
最低0.47元/天 解锁文章
846

被折叠的 条评论
为什么被折叠?



