SOFABoot 是基于 Spring Boot 的開發框架,用于快速、敏捷地開發 Spring 應用程序,特別適合構建微服務系統。SOFABoot 在 Spring Boot 的基礎上提供了諸如 Readiness Check、類隔離、日志空間隔離等能力,以解決大規模團隊開發云原生微服務系統中會遇到的問題。同時 SOFABoot 也提供了 SOFA 中間件的輕量級集成方案,僅需少量配置即可在 SOFABoot 中使用金融科技中間件。金融科技中間件也可通過相應的 starter 模塊單獨配置集成到 Spring Boot 工程中。
SOFABoot 基于 Spring Boot 開發,使用標準 Spring 接口實現。可將 SOFABoot 理解為 Spring 的一個擴展,構建在 Spring Boot 基礎之上提供金融科技中間件解決方案,每一個中間件均是一個可插拔的組件,添加和移除非常方便,同時,利用“約定優先配置”(convention over configuration)的理念完成自動配置,開發者能夠更加專注于業務邏輯。
SOFABoot、中間件服務、Spring Boot 以及 SpringCloud 的關系,示意如下:
Spring Boot 是一個非常優秀的開源框架,可以快速、敏捷地開發新一代基于 Spring 框架的應用程序,它并不是用來替代 Spring 的解決方案,而是和 Spring 框架緊密結合,用于提升 Spring 開發者體驗的工具。SOFABoot 在 Spring Boot 的基礎上進行了能力的增強并提供了螞蟻中間件的輕量集成,且可與 Spring Boot、Spring 工程無縫集成。
SOFABoot 支持創建 Web 和 Core 兩種類型的工程。當使用 SOFABoot 開發一個 Web 程序時,相當于“基于 Spring Boot 的 Web 應用 + SOFA 中間件” 進行開發;當使用 SOFABoot 開發一個 J2SE 程序(無 Web 頁面訪問),相當于“基于 Spring Boot 的非 Web 應用(無 servlet 依賴)+ SOFA 中間件” 進行開發。
另外,SOFABoot 現已開源,歡迎訪問 SOFABoot 開源社區,了解更多產品源碼,與更多人共同探討、共創產品。
SOFABoot 作為開發框架,在整個微服務架構中起著至關重要的作用,其本身也在不斷優化升級。