SpringCloud - 第一天
2018-01-18 08:37
134 查看
SpringCloud - 第一天
简介:spring cloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞选、分布式会话等等。它运行环境简单,可以在开发人员的电脑上跑。另外说明spring cloud是基于springboot的,所以需要开发中对springboot有一定的了解,如果不了解的话可以看这篇文章:2小时学会springboot。另外对于“微服务架构” 不了解的话,可以通过搜索引擎搜索“微服务架构”了解下
一、微服务架构概述
1. 单体架构
一个归档包(例如war格式)包含所有的应用程序,通常称为单体应用,以一个电影购票系统为例:
2. 微服务
用中文的表述就是,微服务架构风格就是一种将一个单个应用程序开发为一组小型服务的方法,每个服务运行在自己的进程中,服务间通信采用轻量级的通信机制。就像这样:3. 技术选型
开发框架: Spring Cloud运行平台: PC Server,阿里云,云计算平台,Docker
常用架构:
二、Spring Cloud开发框架
Spring Cloud是在SpringBoot的基础上构建的,用于快速构建分布式系统的通用模式的工具集,特点:约定优于配置
隐藏了组件的复杂性
开箱即用,快速启动
轻量级的组件、
组件丰富,功能齐全
灵活
Spring Cloud组件
开发环境:
JDK 1.8
Spring Boot 1.5.9.RELEASE
Spring Cloud
代码IDE : IDEA
Meavn 3.9
学习是有时间的成本的,这个成本就是时间和精力,降低学习成本的重要方法之一就是少踩坑!因此,建议与本教程使用相同的版本进行学习!
三、微服务注册与发现
微服务构建的系统是分布式系统,微服务之间通过网络进行通信。我们使用服务消费者和服务调用者表示这种关系,关系如图:此处用到Eureka组件,本节不做概述,如果不知道,请看:网址
1. 编写Eureka Server
首先创建一个maven工程:右键工程->创建moder->选择spring initialir
下一步选择cloud discovery->eureka server,然后一直点击下一步
编写启动类
@SpringBootApplication @EnableEurekaServer public class MicroserviceDiscoveryEurekaApplication { public static void main(String[] args) { SpringApplication.run(MicroserviceDiscoveryEurekaApplication.class, args); } }
配置文件application.yml中添加一下内容:
server: port: 8761 eureka: client: registerWithEureka: false #表示将自己注册Eureka Server fetchRegistry: false #表示是否从EurekaServer获取注册信息 serviceUrl: defaultZone: http://localhost:${server.port}/eureka/ #设置与Eureka Service交互的地址
启动Eureka Server
访问http://localhost:8761/,然后看到这个画面
2. 将消费者注册到Eureka Server
复制上一个工程,将ArtifactId改为: microservice-provider-user在配置文件application.yml中添加以下配置:
server: port: 8000 spring: application: name: microservice-provider-user eureka: client: serviceUrl: defaultZone: http://localhost:8761/eureka/ #设置与Eureka Service地址
编写启动类
@SpringBootApplication @EnableEurekaClient public class ProviderUserApplication { public static void main(String[] args) { SpringApplication.run(ProviderUserApplication.class, args); } }
3. 将服务调用者注册到Eureka Server
复制上一个工程,将ArtifactId改为: microservice-consumer-movie在配置文件application.yml中添加以下配置:
server: port: 8000 spring: application: name: microservice-consumer-movie eureka: client: serviceUrl: defaultZone: http://localhost:876 4000 1/eureka/ #设置与Eureka Service地址
编写启动类
@SpringBootApplication @EnableEurekaServer public class ConsumerMovieApplication { public static void main(String[] args) { SpringApplication.run(ConsumerMovieApplication.class, args); } }
4. 启动测试
启动microservice-discovery-eureka启动microservice-provider-user
启动microservice-consumer-movie
访问http://localhost:8761
看到下面的界面,代表成功!
参照书籍:Spring Cloud与Docker微服务架构实战
相关文章推荐
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天
- SpringCloud - 第一天