搭建SpringCloud微服務框架:一、結構和各個組件

搭建微服務框架(結構和各個組件)


簡介

squid.png

SQuid是基於Spring,SpringBoot,使用了SpringCloud下的組件進行構建,目的是想搭建一套可以快速開發部署,並且很好上手的一套微服務框架。

本文源地址:搭建微服務框架(結構和各個組件)

Github地址:SQuid

組件

中間件

資料庫持久層

資料庫

  • Mysql5.7 +
  • Oracle

環境

  • JDK1.8
  • Maven3.2.5
  • Idea

如果你的電腦上已經有安裝好上面的程式,那麼你可以打開git,輸入命令 [email protected]:yanzhenyidai/squid.git 將本項目克隆到本地運行。

不過也可以先看看後面各個組件的集成的說明,送上鏈接:


項目依賴

本次項目是在 spring-boot: 2.0.9.RELEASE 下搭建,所需依賴文件如下:

   <parent>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-parent</artifactId>
       <version>2.0.9.RELEASE</version>
   </parent>
   
   <properties>
       <spring-cloud-alibaba.version>2.1.0.RELEASE</spring-cloud-alibaba.version>
       <spring-cloud-openfeign.version>2.2.0.RELEASE</spring-cloud-openfeign.version>
       <spring-cloud.version>Finchley.SR2</spring-cloud.version>
       <druid-starter.version>1.1.21</druid-starter.version>
   </properties>
   
   <dependencyManagement>
       <dependencies>
           <dependency>
               <groupId>com.alibaba</groupId>
               <artifactId>druid-spring-boot-starter</artifactId>
               <version>${druid-starter.version}</version>
           </dependency>

           <dependency>
               <groupId>com.alibaba.cloud</groupId>
               <artifactId>spring-cloud-alibaba-dependencies</artifactId>
               <version>${spring-cloud-alibaba.version}</version>
               <type>pom</type>
               <scope>import</scope>
           </dependency>

           <dependency>
               <groupId>org.springframework.cloud</groupId>
               <artifactId>spring-cloud-dependencies</artifactId>
               <version>${spring-cloud.version}</version>
               <type>pom</type>
               <scope>import</scope>
           </dependency>

           <dependency>
               <groupId>org.springframework.cloud</groupId>
               <artifactId>spring-cloud-openfeign-dependencies</artifactId>
               <version>${spring-cloud-openfeign.version}</version>
               <type>pom</type>
               <scope>import</scope>
           </dependency>
       </dependencies>
   </dependencyManagement>

parent以 springboot 開始,原因為 springcloud是基於 springboot 的一套腳手架工具,在搭建本項目時遇到了不少的版本衝突的問題,可以看一下springboot和springcloud版本整理

希望能對你有到幫助。