SOFABoot架構的簡單搭建
先簡單介紹一下SOFA Boot ,SOFA Boot 是基于 Spring Boot 的開發架構,是螞蟻金服下的一款開源架構,用于快速、靈活地開發 Spring 應用程式,特别适合建構微服務系統
提供了諸如 Readiness Check,類隔離,日志空間隔離等等能力。
簡單來說包括幾個主要功能:
1 增強 Spring Boot 的健康檢查能力
2 提供類隔離的能力(防止jar包沖突問題)
3 日志空間隔離能力(列印日志路徑分别固定)
4 SOFA 中間件的內建管理等
今天就先簡單建立一個小demo,深層次的之後再說。
1.sofaBoot項目建構在springboot項目基礎上,可通過start.spring.io建立springboot項目。這個之後會詳細介紹一下springboot架構。
2. 本地maven配置檔案 setting.xml添加配置資訊,如下:
<profile>
<id>default</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<repositories>
<repository>
<snapshots>
<enabled>true</enabled>
</snapshots>
<id>maven-snapshot</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<snapshots>
<enabled>true</enabled>
</snapshots>
<id>maven-snapshot</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</pluginRepository>
</pluginRepositories>
</profile>
3. 解壓本地下載下傳好的springboot的項目,修改pom檔案,
替換:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>${spring.boot.version}</version>
<relativePath/>
</parent>
為:
<parent>
<groupId>com.alipay.sofa</groupId>
<artifactId>sofaboot-dependencies</artifactId>
<version>${sofa.boot.version}</version>
</parent>
各版本springboot項目對應sofaboot項目,版本對應見官網。
添加依賴資訊:
<dependency>
<groupId>com.alipay.sofa</groupId>
<artifactId>healthcheck-sofa-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
4.
application.properties配置檔案中加入:
# Application Name
spring.application.name=SOFABoot Demo
# logging path
logging.path=./logs
5.運作項目同springboot,會發現控制台原本spring boot變成了sofaboot,
測試:
SOFABOOT 3.X之前—>浏覽器輸入:http://localhost:8080/sofaboot/versions
SOFABOOT 3.X之後—>浏覽器輸入:http://localhost:8080/actuator/versions
檢視sofa中間件版本資訊(這裡我修改了端口号)
健康檢查資訊可在項目根目錄下配置檔案中設定的./logs檔案中檢視
SOFABoot整體項目可在GitHub中檢視:
GitHub位址
這樣一個簡單的sofaboot架構就成功了,當然sofaboot更主要的多子產品開發及rpc等中間件後期會發一些介紹及配置。