本节主要介绍:springCloud概念、eureka服务中心搭建。。。


SpringBoot与SpringCloud的版本对应详细版:




学习博客:http://www.ityouknow.com/spring-cloud.html

一、简介

1、分布式服务架构(微服务架构)

目前主流实现:Dubbo+zookeeper和SpringBoot+Cloud

利用上述技术都可以将功能服务分散到不同服务器部署,然后实现服务间通信(调用)。

请求-->处理1-->处理2-->响应。意思可以将处理1和处理2做成独立服务分开部署,然后再进行RPC(Dubbo)或HTTP请求和响应模式(Cloud)交互。

Dubbo和Cloud的区别如下:

  • Dubbo和Cloud服务调用机制不同,一个RPC、一个HTTP请求响应
  • Dubbo一般和zookeeper结合管理服务,Cloud内置集成Eureka管理服务
  • Cloud提供一套服务管理的完整方案、Dubbo需要跟其他技术集成使用。
  • Cloud仅用于Rest服务管理、Dubbo是将组件服务化管理  

微服务:


2、springCloud

Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等。

  • Spring Cloud Netflix

  是对Netflix开发的一套分布式服务框架的封装,包括服务的发现和注册,负载均衡、断路器、REST客户端、请求路由等。

  • Spring Cloud Config

  将配置信息中央化保存, 配置Spring Cloud Bus可以实现动态修改配置文件

  • Spring Cloud Bus

  分布式消息队列,是对Kafka, MQ的封装

  • Spring Cloud Security

  对Spring Security的封装,并能配合Netflix使用

  • Spring Cloud Zookeeper

  对Zookeeper的封装,使之能配置其它Spring Cloud的子项目使用

  • Spring Cloud Eureka
    Spring Cloud Eureka 是 Spring Cloud Netflix 微服务套件中的一部分,它基于Netflix Eureka 做了二次封装,主要负责完成微服务架构中的服务治理功能。

二、搭建SpringCloud服务中心(eureka)

步骤:

1. 创建一个springboot的maven工程,添加pom.xml依赖

<dependencies>
         <!-- springcloud-eureka-server -->
         <dependency>
             <groupId>org.springframework.cloud</groupId>
             <artifactId>spring-cloud-starter-eureka-server</artifactId>
             <version>1.3.4.RELEASE</version>
         </dependency>
     </dependencies>    <dependencyManagement>
         <dependencies>
             <dependency>
                 <groupId>org.springframework.cloud</groupId>
                 <artifactId>spring-cloud-starter-parent</artifactId>
                 <version>Brixton.SR5</version>
                 <type>pom</type>
             </dependency>
         </dependencies>
     </dependencyManagement>

2. application.properties中追加eureka参数定义

# server
 server.port=7777# eureka
 # 当前的项目是否要作为一个服务注册到容器中
 eureka.client.registerWithEureka=false
 # 当前的服务工程是否要作为一个服务调用者 这里只是一个单纯的服务中心,它既不参与注册也不参与调用
 eureka.client.fetchRegistry=false
 # 服务中心地址
 eureka.client.serviceUrl.defaultZone=http://localhost:7777/eureka

3. 主启动类,使用@EnableEurekaServer启动eureka服务器

//启动eureka服务器
 @EnableEurekaServer
 @SpringBootApplication
 public class EurekaServerBootApplication  {    public static void main(String[] args) {
         SpringApplication.run(EurekaServerBootApplication .class, args);
     }}


4.启动应用,访问http://localhost:7777/,出现如下页面,则eureka服务搭建成功。

搭建springcloud微服务项目父项目 springcloud实现微服务_Cloud