SpringBoot太重,Vert.x真香!
上一篇:最近一些想法
Spring Boot總體來說,搭建還是比較容易的,特別是Spring Cloud全家桶,簡稱親民微服務(wù),但在發(fā)展趨勢中,容器化技術(shù)已經(jīng)成熟,面對(duì)巨耗內(nèi)存的Spring Boot,小公司表示用不起。如今,很多剛誕生的JAVA微服務(wù)框架大多主打“輕量級(jí)”,主要還是因?yàn)镾pring Boot太重。
JAVA系微服務(wù)框架No1-Spring Cloud
| 介紹
至少一臺(tái)“服務(wù)發(fā)現(xiàn) ”的服務(wù)器; 可能有一個(gè)統(tǒng)一的網(wǎng)關(guān)Gateway; 可能需要一個(gè)用于“分布式配置管理”的配置中心; 可能進(jìn)行“服務(wù)追蹤”,知道我的請(qǐng)求從哪里來,到哪里去; 可能需要“集群監(jiān)控”; 項(xiàng)目上線后發(fā)現(xiàn),我們需要好多服務(wù)器,每次在集群中增加服務(wù)器時(shí),都感覺心疼;
| 壓測30秒
壓測前的內(nèi)存占用

如圖,內(nèi)存占用304M。
壓測時(shí)的內(nèi)存占用

| 概覽

| 總結(jié)
啟動(dòng)時(shí)間大約10秒左右:?Started Application in 10.153 seconds (JVM running for 10.915)
JAVA系響應(yīng)式編程的工具包Vert.x
| 介紹
華為微服務(wù)框架Apache ServiceComb就是以Vert.x為底層框架實(shí)現(xiàn)的,在"基準(zhǔn)測試網(wǎng)站TechEmpower"中,Vert.x的表現(xiàn)也十分亮眼。
| 壓測30秒
壓測前的內(nèi)存占用

如圖,內(nèi)存占用65M。
壓測時(shí)的內(nèi)存占用

如圖,內(nèi)存占139M,CPU占2.1%,給人的感覺似乎并沒有進(jìn)行壓測。
| 概覽

| 總結(jié)
JAVA系其他微服務(wù)框架
| SparkJava
jar比較小,大約10M
占內(nèi)存小,大約30~60MB;
性能還可以,與Spring Boot相仿;
| Micronaut
Grails團(tuán)隊(duì)新寵; 可以用 Java、Groovy 和 Kotlin 編寫的基于微服務(wù)的應(yīng)用程序; 相比Spring Boot已經(jīng)比較全面; 性能較優(yōu),編碼方式與Spring Boot比較類似; 啟動(dòng)時(shí)間和內(nèi)存消耗方面比其他框架更高效; 多語言; 依賴注入; 內(nèi)置多種云本地功能; 很新,剛發(fā)布1.0.0
| Javalin
上手極為容易;
靈活,可以兼容同步和異步兩種編程思路;
JAR小,4~5M;
多語言;
有KOA的影子;
只有大約2000行源代碼,源代碼足夠簡單,可以理解和修復(fù);
符合當(dāng)今趨勢;
多語言;
嵌入式服務(wù)器Jetty;
啟動(dòng)快;
JAR小,大約10M;
文檔很少。
相關(guān)閱讀:2T架構(gòu)師學(xué)習(xí)資料干貨分享
全棧架構(gòu)社區(qū)交流群
?「全棧架構(gòu)社區(qū)」建立了讀者架構(gòu)師交流群,大家可以添加小編微信進(jìn)行加群。歡迎有想法、樂于分享的朋友們一起交流學(xué)習(xí)。
看完本文有收獲?請(qǐng)轉(zhuǎn)發(fā)分享給更多人
往期資源:
