溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JEE與Spring Boot代碼性能比較分析

發(fā)布時間:2020-10-17 14:02:45 來源:腳本之家 閱讀:190 作者:banq 欄目:編程語言

JavaEE與Spring Boot其實很難比較測試,前者適合單體SOA架構,后者適合微服務,但是還是有好事者把兩者放在一起比較性能。

我把一些JEE和Spring代碼放在一起做了同樣的事情。Spring做了一些開箱即用的好東西,所以我在一些JEE示例中復制了它以提高性能。

測試環(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驅動程序。

硬件:采用AMD 2700x Ryzen處理器,在2600 GHz頻率下具有32 GB內存。

實際結果:

  • Spring可以節(jié)省一些編碼時間
  • Spring通常會為性能做出很好的選擇,但是加入到JEE應用程序時,這些優(yōu)勢就會消失。
  • Spring執(zhí)行save()或findAll()之類方法時不履行@Transactional,Spring會更改隔離級別和事務傳播。這使得Spring在執(zhí)行非更新數據庫的功能時具有優(yōu)勢,但是IMO,Spring應該真正尊重設置的隔離級別和傳播。當改變JEE中的方法的隔離級別和傳播時,JEE會更快。
簡單REST調用
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

總結

以上所述是小編給大家介紹的JEE與Spring Boot代碼性能比較,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI