• spring cloud 微服务架构 简介


     Spring Cloud
    1、 Spring Cloud 简介
    Spring Cloud是在Spring Boot的基础上构建的,用于简化分布式系统构建的工具集,为开发人员提供快速建立分布式系统中的一些常见的模式。
    > 例如:配置管理(configuration management),服务发现(service discovery),断路器(circuit breakers),智能路由( intelligent routing),微代理(micro-proxy),控制总线(control bus),一次性令牌( one-time tokens),全局锁(global locks),领导选举(leadership election),分布式会话(distributed sessions),集群状态(cluster state)。
    Spring Cloud 包含了多个子项目:
    > 例如:Spring Cloud Config、Spring Cloud Netflix等
    Spring Cloud 项目主页:[http://projects.spring.io/spring-cloud/](http://projects.spring.io/spring-cloud/)
    Talk is cheap, show me the code.下面我们将以代码与讲解结合的方式,为大家讲解Spring Cloud中的各种组件。
     
    2、准备工作
    * 技术储备:
    | 所需技能 | 备注 |
    | ----------- | ------------------------------- |
    | Java | |
    | Maven | 文章涉及到大量的代码,均使用Maven构建 |
    | Spring Boot | Spring Cloud是在Spring Boot基础上构建的 |
     
     环境准备:
    | 工具 | 版本或描述 |
    | ----- | -------------------------------- |
    | JDK | 1.8 |
    | IDE | STS 或者 IntelliJ IDEA,本教程使用的是STS. |
    | Maven | 3.x |
    * 本课程所使用的软件及版本:

    | 使用到的软件 | 版本号 | 是否最新版本 |

    | ------------ | ------------- | ------ |
    | Spring Boot | 1.4.0.RELEASE | 是 |
    | Spring Cloud | Brixton.SR5 | 是 |
    3、 父项目的建立

    在进入主题之前,我们首先创建一个父项目(spring-cloud-microservice-study),这样可以对项目中的Maven依赖进行统一的管理。

    xml

    <?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.xujin.study</groupId>
    	<artifactId>microservice-spring-cloud</artifactId>
    	<version>0.0.1-SNAPSHOT</version>
    	<packaging>pom</packaging>
    
    	<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.4.0.RELEASE</version>
    	</parent>
    
    	<dependencyManagement>
    		<dependencies>
    			<dependency>
    				<groupId>org.springframework.cloud</groupId>
    				<artifactId>spring-cloud-dependencies</artifactId>
    				<version>Brixton.SR5</version>
    				<type>pom</type>
    				<scope>import</scope>
    			</dependency>
    		</dependencies>
    	</dependencyManagement>
    	
    	<build>
    		<plugins>
    			<plugin>
    				<groupId>org.springframework.boot</groupId>
    				<artifactId>spring-boot-maven-plugin</artifactId>
    			</plugin>
    		</plugins>
    	</build>
    </project>
    

      

     
    1. 笔者讲解采用最新的Spring Boot 和Spring Cloud进行讲解,其中可能涉及到部分新特性,笔者尽量指出,同时笔者能力有限,如有理解不到位的地方,还请各位看客指出,定在第一时间进行修正。
    2. Spring Cloud版本并不是传统的使用数字的方式标识,而是使用例如:Angel、Brixton、Camden...等等伦敦的地名来命名版本,版本的先后顺序大家可能已经猜到了,就是使用字母表的先后来标识的。笔者在咨询过Spring Cloud的主要贡献者之一Josh Long之后已经确认。
  • 相关阅读:
    算法导论之贪心算法
    编程过程中遇到的一些细节
    c++11和c99
    面试总结(YY一面)
    python(17):字典
    python(16):元组
    python(15):练习题
    python(14):列表
    python(13):字符串
    python(12):练习题
  • 原文地址:https://www.cnblogs.com/antonyhubei/p/7599569.html
Copyright © 2020-2023  润新知