springCould入门
1.Spring Cloud介绍
1.1与微服务的关系
微服务是一种架构方式,最终肯定需要技术架构去实施。
微服务的实现方式很多,但是最火的莫过于Spring Cloud了
官网地址:http://projects.spring.io/spring-cloud/
1.2Spring Cloud 版本
它的版本命名比较特殊,是以A到Z的为首字母的一些单词(其实是伦敦地铁站的名字)组成
1.3Spring cloud 架构
Eureka:注册中心 美[juˈriːkə]
Zuul 或者 Gateway:服务网关
Ribbon: 负 载 均 衡 美[ˈrɪbən]
Feign:服务调用 美[feɪn] (检测集群的状态,把请求发给空闲的)
Hystrix或Resilience4j:熔断器 美[hɪst’rɪks] 美[rɪˈzɪliəns]
2.微服务工程(我只有一台电脑,所以ip地址是相同的,只能修改端口号来表示不同的客户端与服务器)
微服务工程三要素
一是提供者 二是消费者 三是注册中心
2.1步骤
1.创建父工程并添加spring boot父坐标和管理其它组件的依赖
把所有子工程都要用到的依赖全部添加到父工程,子工程只要使用Maven创建就行
父工程的pom.xml
<?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>
<groupId>com.zx</groupId>
<artifactId>micro_service_spring_cloud_parent</artifactId>
<version>1.0-SNAPSHOT</version>
<!-- 注意父工程的打包方式是pom-->
<packaging>pom</packaging>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.0</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<modules>
<module>demo01_provider_user8081</module>
<module>demo02_consumer_user8082</module>
<module>demo03_registercenter_eureka_8083</module>
</modules>
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>2020.0.0-M5</spring-cloud.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies