Spring::Spring Cloud学习
一、Spring Cloud简介
Spring Cloud,基于Spring boot提供了一套微服务解决方案,包括服务注册、配置中心、全链路监控、服务网关、负载均衡、熔断器等组件,除了基于NetFlix的开源组件做高度抽象封装之外,还有一些选型中立的开源组件。
Spring Cloud,基于Spring Boot提供了一套微服务解决方案,包括服务注册、配置中心、全链路监控、服务网关、负载均衡、熔断器等组件,除了基于NetFlix的开源组件做高度抽象封装之外,还有一些选型中立的开源组件。
Spring Cloud利用Spring Boot的开发便利性,巧妙地简化了分布式系统基础设施的开发,Spring Cloud为开发人员提供了快速构建分布式系统的一些工具,包括配置管理,服务发现,断路器,路由,微代理,事件总线,全局锁,决策竞选,分布式会话等等,他们都可以用Spring Boot的开发风格做到一键启动和部署。
Spring Boot并没有重复造轮子,它只是将目前各家公司开发的比较成熟,经得起实际考研的服务框架组合起来,通过Spring Boot风格进行再封装,屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂,易部署和易维护的分布式系统开发工具包
Spring Cloud是分布式微服务架构下的一站式解决方案,是各个微服务架构落地技术的集合体,俗称微服务全家桶。
二、知识点
2.1 Eureka 注册中心
2.1.1 服务端
2.1.1.1 pom依赖包
<!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-eureka-server -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
<version>1.4.6.RELEASE</version>
</dependency>
2.1.1.2 配置文件
server:
port: 8761
eureka:
instance:
hostname: localhost # eureka服务端实例名称
client:
registerWithEureka: false # 表示是否向注册中心注册自己
fetchRegistry: false # 为false表示自己为注册中心
serviceUrl: # 监控页面
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
2.1.1.3 启动类
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
@SpringBootApplication
@EnableEurekaServer
public class EurekaServerApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaServerApplication.class, args);
}
}