這篇文章帶給大家的內容是關於簡單了解Spring Boot及其作用(圖文),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。
隨著網路的高速發展,龐大的使用者群體和快速的需求變化已經成為了傳統架構的痛點。
在這種情況下,如何從系統架構的角度出發,建立出靈活、易擴展的系統來快速回應需求的變化,同時,隨著使用者量的增加,如何確保系統的穩定性、高可用性、可擴充性等等,成為了系統架構面臨的挑戰。
為了解決這些問題,微服務架構應運而生,它的本質在於分散式、去中心化。
微服務架構是一種架構模式或是說一種架構風格,它提倡將傳統的一站式應用(左下圖)根據業務拆分成一個個服務(右下圖),徹底去掉耦合,每個服務提供單一業務功能,一個服務只做一件事,運行在其獨立的進程中。
每個服務之間互相協調、互相配合,為使用者提供最終的價值。服務之間採用輕量級的通訊機制(通常是基於 http 的 RESTful API)。
每個服務都圍繞著具體業務進行構建,並且能夠被獨立地部署到生產環境、類別生產環境等。不同的服務也可以使用不同的資料庫和資料儲存。
另外,應盡量避免統一的、集中式的服務管理機制,對具體的一個服務而言,應根據業務上下文,選擇合適的語言、工具對其進行構建,可以有一個非常輕量級的集中式管理來協調這些服務,可以使用不同的語言來開發這些服務。
Spring Boot 誕生時,微服務概念正處於醞釀階段,Spring Boot 的研發融合了微服務架構的理念,是Java 領域微服務架構最優落地的技術,為微服務架構提供了技術支撐。 Spring Boot 有哪些優勢呢?
良好的基因:Spring Boot 是伴隨著 Spring 4.0 誕生的,繼承了 Spring 框架的優秀基因。
簡化編碼:傳統的 Spring web 專案需要引入一堆相關的依賴,而在 Spring Boot 中,我們只需要引入一個 starter-web 依賴即可快速建立 web 應用。
簡化配置:傳統的 Spring 專案曾經被人認為是“配置地獄”,而 Spring Boot 更多的是採用 Java Config 的方式,簡化了配置的繁瑣。
簡化部署:Spring Boot 專案不需要在伺服器上去部署 tomcat,因為 Spring Boot 內嵌了 tomcat,我們只需要將專案打成 jar 套件,透過命令一鍵式啟動。
簡化監控:可以引入 spring-boot-start-actuator 依賴,直接使用 REST 方式來取得進程的運行期效能參數,從而達到監控的目的,也可以配合 Spring Cloud 一起使用。
微服務是未來發展的趨勢,使用Spring Boot 開發項目,會顛覆傳統的開發模式,大大提升開發效率,可以說如果你使用Spring Boot 開發過項目,你就不願意再回到原來的開發方式了。
看看 Spring 官方對 Spring Boot 的定位:Build Anything,Build 任何東西。
Spring Boot 旨在盡可能快速地啟動和運行,並且只需最少的 Spring 前期配置。同時我們也來看一下官方對後面兩個的定位:
SpringCloud:Coordinate Anything,協調任何事情;
SpringCloud Data Flow:Connect everything,連接任何東西。
仔細品味一下,Spring 官網對Spring Boot、SpringCloud 和SpringCloud Data Flow 三者定位的措辭非常有味道,同時也可以看出,官方對這三個技術非常重視,我們還有什麼理由不去學習呢?
以上是簡單了解Spring Boot及其作用(圖文)的詳細內容。更多資訊請關注PHP中文網其他相關文章!