JEE與Spring Boot代碼性能比較分析
JavaEE與Spring Boot其實(shí)很難比較測(cè)試,前者適合單體SOA架構(gòu),后者適合微服務(wù),但是還是有好事者把兩者放在一起比較性能。
我把一些JEE和Spring代碼放在一起做了同樣的事情。Spring做了一些開箱即用的好東西,所以我在一些JEE示例中復(fù)制了它以提高性能。
測(cè)試環(huán)境:IBM JRE 8.0.5.22、IBM Liberty 18.0.0.3 App Server、底層使用Ubuntu Linux 18.04.1 LTS和MySQL 5.7.24以及MySQL 8.0.13 JDBC驅(qū)動(dòng)程序。
硬件:采用AMD 2700x Ryzen處理器,在2600 GHz頻率下具有32 GB內(nèi)存。
實(shí)際結(jié)果:
- Spring可以節(jié)省一些編碼時(shí)間
- Spring通常會(huì)為性能做出很好的選擇,但是加入到JEE應(yīng)用程序時(shí),這些優(yōu)勢(shì)就會(huì)消失。
- Spring執(zhí)行save()或findAll()之類方法時(shí)不履行@Transactional,Spring會(huì)更改隔離級(jí)別和事務(wù)傳播。這使得Spring在執(zhí)行非更新數(shù)據(jù)庫(kù)的功能時(shí)具有優(yōu)勢(shì),但是IMO,Spring應(yīng)該真正尊重設(shè)置的隔離級(jí)別和傳播。當(dāng)改變JEE中的方法的隔離級(jí)別和傳播時(shí),JEE會(huì)更快。
簡(jiǎn)單REST調(diào)用 Liberty perfRESTJEE 3631 ms Liberty perfRESTSpring 2909 ms SpringBoot perfRESTSpring 3064 ms REST with JPA Liberty perfRESTJPAJEE 65531 ms Liberty perfRESTJPASpring 37076 ms SpringBoot perfRESTJPASpring 37757 ms REST with JPA (EclipseLink) Liberty perfRESTJPASpring-EL 37709 ms SpringBoot perfRESTJPASpring-EL 76791 ms
總結(jié)
以上所述是小編給大家介紹的JEE與Spring Boot代碼性能比較,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
SpringBoot實(shí)現(xiàn)自定義配置文件提示的方法
這篇文章主要介紹了SpringBoot實(shí)現(xiàn)自定義配置文件提示的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03
Spring?Boot?如何通過(guò)ServletRequestHandledEvent事件實(shí)現(xiàn)接口請(qǐng)求的性能監(jiān)控
在Spring框架中,監(jiān)控接口請(qǐng)求的性能可以通過(guò)ServletRequestHandledEvent事件實(shí)現(xiàn),這篇文章給大家介紹Spring?Boot?如何通過(guò)ServletRequestHandledEvent事件實(shí)現(xiàn)接口請(qǐng)求的性能監(jiān)控,感興趣的朋友跟隨小編一起看看吧2024-08-08
MyBatis-Plus邏輯刪除和字段自動(dòng)填充的實(shí)現(xiàn)
本文主要介紹了MyBatis-Plus邏輯刪除和字段自動(dòng)填充的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08
Java Netty實(shí)現(xiàn)心跳機(jī)制過(guò)程解析
這篇文章主要介紹了Java Netty實(shí)現(xiàn)心跳機(jī)制過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03
詳解Java如何實(shí)現(xiàn)與JS相同的Des加解密算法
這篇文章主要介紹了如何在Java中實(shí)現(xiàn)與JavaScript相同的DES(Data Encryption Standard)加解密算法,確保在兩個(gè)平臺(tái)之間可以無(wú)縫地傳遞加密信息,希望對(duì)大家有一定的幫助2025-04-04
Spring Boot整合elasticsearch的詳細(xì)步驟
這篇文章主要介紹了Spring Boot整合elasticsearch的詳細(xì)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04

