簡單來講,springcloud的就是由一組springboot應用(服務)組成,相互之間經過REST等方式進行通訊。java
兩個springboot應用,其中一個做爲服務提供者,一個做爲服務消費者,我認爲這就構成了一個最簡單的springcloud應用,以後其餘的工具都是爲這兩個應用來服務的。web
咱們來看下,官方給的架構圖,能夠看出,核心就是microservices,其餘都是爲了保證microservices正常運轉的工具。spring
架構圖apache
既然是最簡單的入門教程,那麼其餘概念什麼的就不說了,下面我們如今就直奔主題,先開個頭,以後的豐富能夠在入門以後再細細研究。springboot
Let's go code now !架構
爲了省事,咱們先構建一個父項目,一個pom應用,主要用來對依賴統一管理。下面是個人一個父pom文件:maven
<?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.microservice.springcloud</groupId> <artifactId>springcloudparent</artifactId> <version>1.0</version> <!-- 這裏打包形式爲pom --> <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> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties> <!-- 基本其餘應用都須要用到web依賴,就添加父pom裏--> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> <!-- 重點來了,添加cloud及springboot的依賴管理--> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Greenwich.SR2</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>2.1.7.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <build> <finalName>microservice</finalName> <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> </resource> </resources> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <configuration> <delimiters> <delimit>$</delimit> </delimiters> </configuration> </plugin> </plugins> </build> </project>
其餘的應用都是做爲moudles存在的(Intellij IDEA工具,其餘本身換算把)。spring-boot