3 個主流 Java 微服務框架


本文我們簡單聊聊當下主流的 3 個 Java 微服務框架,看看各自的特點。

1. Spring and Spring Boot

Spring Boot 在 Java 微服務領域絕對是一哥,毫無爭議,據說已經占據 57% 的市場份額。

Spring Boot 這么牛是有道理的,它太成熟了,功能特性極其豐富,不管你的需求多復雜,都能滿足你。

還內置了各種通用的功能,例如安全認證等等,開箱即用,非常方便。

SpringBoot 配置優先的理念大大簡化了開發,通過自動配置可以非常簡單的集成各種技術。

SpringBoot 集成了嵌入式的 Tomcat,應用打成 jar 包即可以運行,可以方便的運行在容器中。

SpringBoot 是開源的,文檔很全,社區也活躍。

從學習、開發,到部署運行,都這么便捷,想不火都難。

官網地址:

https://spring.io

2. Dropwizard

Dropwizard 是一個開源的 RESTful 快速開發框架,對微服務的開發也極其友好,而且性能很強。

Dropwizard 也是打成 Jar 運行,SpringBoot 默認集成的是 Tomcat,Dropwizard 集成的是 Jetty。

Dropwizard 有一個特點,它集成了各個領域的龍頭技術,而且不可替換,不像 SpringBoot 集成的那么多,供大家選擇。

例如:

  • WebServer 選 Jetty
  • REST 選 Jersey
  • 監控選 Metrics
  • 日志用 Logback、slf4j

這樣的話就不需要我們自己選擇了,簡單了很多。

而 SpringBoot 的思路是全面包容,你想用啥都行,我都支持,例如 WebServer 你可以用 Tomcat,也可以選 Jetty、Undertow。

Dropwizard 自身是不支持依賴注入的,但集成了這個領域的強者 Guice 和 Dagger。

官網地址:

https://www.dropwizard.io

3. Micronaut

Micronaut 有3個突出的特點:

  • 啟動極快
  • 內存占用少
  • 原生支持 ServerLess

IOC 是 Spring 引以為傲的特性,是基於大量的反射實現的,但這會影響啟動速度,Micronaut 沒有這么做,較少的使用了反射和代理,所以啟動飛快,而且 Micronaut 是基於 GraalVM 的,增強了其速度和內存方面的優勢。

Micronaut 使用的是 Netty,所以對響應式編程的支持也是一流的。

官網地址:

https://micronaut.io/

SpringBoot 我們都很熟悉了,建議也了解一下 Dropwizard 和 Micronaut,有利於擴展我們的思路。

推薦閱讀

OAuth2 圖解

輕松理解 Kubernetes 的核心概念

開發者必須要了解的架構技術趨勢:Service Mesh


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM