一 、SpringCloud介绍
Spring Cloud Config 是配置管理工具包,让你可以把配置放到远程服务器,几种化管理集群配置,目前支持本地存储,Git以及Subversion。
Eureka 云端服务发现,一个基于 REST 的服务,用于定位服务,以实现云端中间层服务发现和故障转移。
Hystrix 熔断器,容错管理工具,旨在通过熔断机制控制服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力。
Zuul 是在云平台上提供动态路由,监控,弹性,安全等边缘服务的框架。Zuul 相当于是设备和 Netflix 流应用的 Web 网站后端所有请求的前门。
Spring Cloud Bus 事件、消息总线,用于在集群(例如,配置变化事件)中传播状态变化,可与Spring Cloud Config联合实现热部署。
Spring Cloud Data Flow 大数据操作工具,作为Spring XD的替代产品,它是一个混合计算模型,结合了流数据与批量数据的处理方式。
优点
SpringCloud很有可能成为未来微服务架构的标准框架。
约定优于配置
开箱即用、快速启动
适用于各种环境
轻量级的组件
组件支持丰富,功能齐全
选型中立
缺点
文档较少,国内研究并不成熟,相对国外较为火热,社区活跃度高。
二、准备工作
1.安装JDK1.7以上
2.Windows操作系统
3.下载Maven3.5.3:[官网](http://maven.apache.org/download.cgi)
4.eclipse配置maven
4.1在eclipse中找到找到maven配置项
4.2选择maven安装路径
4.3找到maven下的setting配置文件
4.4修改setting配置文件
4.4.1配置本地库地址
4.4.2配置远程库地址
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
三、搭建springCloud注册中心(Eureka)
1.首先创建一个maven工程
1.1选择maven项目
1.2选择创建一个简单maven项目
1.3自定义maven项目名称
2.pom.xml添加springCloud所需依赖
<parent>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-parent</artifactId>
<version>Angel.SR6</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
3.创建application.yml属性文件,注:该文件要放置/springCloudEureka/src/main/resources下
server:
port: 9999
eureka:
instance:
hostname: 127.0.0.1
client:
registerWithEureka: false
fetchRegistry: false
serviceUrl:
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
4.创建类
package com.springCloudDemo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer;
@SpringBootApplication
@EnableEurekaServer
public class Demo {
public static void main(String[] args) {
SpringApplication.run(Demo.class, args);
}
}
5.测试结果