关于网站备案前置审批的相关说明 吉林百度客服在哪里找
springcloud定义
springcloud搭建
Netflix项目
Eureka(注册发现)
Eureka主页信息
Eureka服务注册中心(Eureka Server)
搭建
失效剔除(配置)
Eureka服务提供方(Eureka Client)
搭建
Eureka服务消费方(Eureka Client)
服务列表更新
Eureka远程调用
Eureka配置文件信息
Zuul(网关)
搭建
Gateway(网关)-> 替代Zuul
搭建
路由匹配(predicates)
过滤器(Filter)
Feign(服务调用)
搭建(服务调用)
搭建(熔断降级)
Dubbo(服务调用)-> 比Feign更灵活
Hystrix(熔断降级)
搭建
Sentinel (熔断降级)-> 比Hystrix强大
项目架构图
springcloud定义
Spring Cloud是一系列框架的集合,它包含多个子项目(针对分布式系统中涉及的多个不开源产品):
• Spring Cloud Config
• Spring Cloud Netflix
• Spring Cloud CloudFoundry
• Spring Cloud AWS
• Spring Cloud Security
• Spring Cloud Commons
• Spring Cloud Zookeeper
• Spring Cloud CLI
Cloud核心是服务治理,服务治理主要通过整合Spring Cloud Netflix项目,该项目包括:
• Eureka:用于服务注册和发现
• Hystrix:调用断路器
• Ribbon:调用端负载均衡
• Feign: Rest客户端
• Zuul:智能服务路由
• Spectator、Servo、Atlas:用于监控数据收集和展示
• Archaius:用于配置读取
• RxJava :提供Controller层Reactive封装
springcloud搭建
-
系统架构图及分析
搭建springcloud要构建三个角色:
角色 内容 Eureka Server(服务注册中心) 负责服务列表的注册、维护和查询等功能 Service Provider(服务提供方) 负责将所提供的服务向Eureka Server进行注册、续约和注销等操作 Service Consumer(服务消费方) 负责从Eureka Server中获取相应的服务列表 -
构建基础系统
-
搭建层级关系
-
创建maven主工程(ferao-spring-cloud)
• 模块创建
• 引入springboot依赖
-> 父工程中指定SpringCloud的版本
-> packaing修改为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><groupId>com.ferao</groupId><artifactId>ferao-spring-cloud</artifactId><version>0.0.1-SNAPSHOT</version><packaging>pom</packaging><name>ferao-spring-cloud Maven Webapp</name><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version></properties><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.9.RELEASE</version></parent><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>Edgware.RELEASE</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><modules><module>consumer-ferao</module><module>service-discovery</module><module>provider-ferao</module></modules><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>
-
创建service-discovery模块((服务注册中心))
• 模块创建引入依赖:
• 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 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.ferao</groupId><artifactId>service-discovery</artifactId><version>0.0.1-SNAPSHOT</version><name>service-discovery</name><description>Demo project for Spring Boot
-