您好,登錄后才能下訂單哦!
SpringBoot是最近幾年比較流行的web應(yīng)用開(kāi)發(fā)框架,它是微服務(wù)的一個(gè)開(kāi)發(fā)框架。它的Web服務(wù)器內(nèi)核為Tomcat或Jetty,它們作為Servlet容量來(lái)對(duì)客戶端的http/https請(qǐng)求進(jìn)行解析。最近,spring.io又出推出一套新的服務(wù)器內(nèi)核框架,它就是WebFlux,以流(stream)的方式進(jìn)行客戶端請(qǐng)求的解析與處理。
Vertx 是另一套微服務(wù)開(kāi)發(fā)框架,它是由Eclipse提供的,其服務(wù)器內(nèi)核是Netty。這個(gè)與WebFlux其實(shí)是相同的。最近國(guó)內(nèi)有不少朋友發(fā)文說(shuō),SpringBoot的WebFlux的性能也沒(méi)有想象的那么好,他們指出雖然Non-Blocking技術(shù)被使用了。但性能上也存在問(wèn)題。我雖然沒(méi)有對(duì)他們的測(cè)試結(jié)果進(jìn)行考證,但受他們的文章的啟發(fā)用SpringBoot+Vertx 3 + JDBC搭建一個(gè)項(xiàng)目。
整體上,這個(gè)Demo項(xiàng)目是SpringBoot進(jìn)行整個(gè)項(xiàng)目的底層管理,用Vertx實(shí)現(xiàn)RestFul層,用Spring的Service層進(jìn)行業(yè)務(wù)處理,以HIKARI進(jìn)行數(shù)據(jù)庫(kù)連接池的管理,使用JdbcTemplate進(jìn)行數(shù)據(jù)庫(kù)的操作,整體性能確實(shí)有不小的提高,但開(kāi)發(fā)的復(fù)雜程序也有不少提高。特別是將客戶請(qǐng)求數(shù)據(jù)傳給Spring 的Service時(shí),使用到了EventBus,這時(shí)候,并發(fā)性提高的同時(shí),代碼實(shí)現(xiàn)的復(fù)雜性也增加了很多。
從這個(gè)Demo經(jīng)歷來(lái)看,在目前應(yīng)用服務(wù)器用戶較小的情況下,完全沒(méi)有必要使用Vertx進(jìn)行開(kāi)發(fā),使用SpringBoot已經(jīng)足夠了。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。