国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

如何將開發環境的 Spring Boot 應用程序內存降低 40% 以上

開發 前端
總而言之,通過適當配置 JVM 和 Spring Boot,并理解內存消耗的原理,我們可以降低本地開發環境的內存消耗,提高工作效率。希望這些提示能對您有所幫助!

本文翻譯自:https://medium.com/@satanjim/how-we-reduced-the-memory-consumption-of-spring-boot-application-over-40-for-the-development-c8a5813fac23

在開發基礎的 Spring Boot 應用程序時,我們需要考慮可承受的內存消耗。隨著添加更多依賴項,內存消耗也會增加。對于整體應用程序,通常仍然可以承受內存消耗,但當我們開發多個微服務并在本地計算機上運行時,這可能成為一場噩夢,影響開發效率。

Spring Boot 和 JVM 都帶有一些默認配置,適用于大多數情況,甚至在某些生產環境中也能勝任。但是如果我們能調整一些配置來適應本地開發,就可以顯著減少內存消耗。請注意,我不是 JVM 和 Spring Boot 方面的專家,只是想在這篇文章中分享一些我自己的經驗。

誰消耗了內存

首先,讓我們了解一下,到底是誰在消耗內存呢?沒錯,是 JVM。但是它是如何做到的呢?

要深入了解這個問題,我們需要了解 JVM 的內部結構,但這超出了本文的范圍。簡單來說,JVM 的內存消耗可以分成堆(Heap)、元空間(Metaspace)、每個線程的堆棧(Thread Stack)以及其他。

內存消耗內存消耗

為了減少內存消耗,我們需要向 JVM 顯式地傳遞一些參數。

首先,我們需要進行一些前置準備:

  • 安裝 Docker 和 docker-compose
  • 使用 Java 17 版本(但是 8 到最新版本之間的任何版本應該都可以,除了 Java 8 中的一些舊補丁)
  • 使用 Spring Boot

接下來,我們可以配置一些參數。創建一個名為"dev.jvm.conf"的文件,并輸入以下值(稍后我們會解釋這些值的含義):

# dev.jvm.conf
# 覆蓋應用程序的屬性
SERVER_TOMCAT_ACCEPT_COUNT=3
SERVER_TOMCAT_MAX_CONNECTIONS=3
SERVER_TOMCAT_THREADS_MAX=3
SERVER_TOMCAT_THREADS_MIN_SPARE=1
SPRING_MAIN_LAZY_INITIALIZATION=true

# 設置JVM參數
JAVA_TOOL_OPTIONS=-XX:+UseSerialGC -Xss512k -XX:MaxRAM=200m

然后,我們使用 docker-compose 將這些環境變量傳遞到容器中:

# docker-compose.yml
services:
  service1:
    image: service1:dev
    env_file:
      - dev.jvm.conf

  service2:
    image: service2:dev
    env_file:
      - dev.jvm.conf

現在運行docker-compose up命令,您應該能看到一些差異。

接下來,讓我們詳細討論一下這些配置

在開始之前,請記住,降低某些值不會直接減少本地環境中的內存使用量,因為本地環境中通常不會有那么多請求。我們添加閾值的目的是,即使在本地環境中,如果我們開始收到更多請求,也要限制其數量。這最終將有助于限制內存使用。

  • SERVER_TOMCAT_ACCEPT_COUNT:該屬性設置了當所有可能的請求處理線程都在使用時,傳入連接請求的最大隊列長度。當服務器負載較重且所有工作線程都繁忙時,傳入的請求將被放入隊列中。如果隊列已滿,額外的連接請求將被拒絕。默認值為 100。
  • SERVER_TOMCAT_MAX_CONNECTIONS:該屬性定義了 Tomcat 服務器同時能夠處理的最大連接數。默認值為 8192。
  • SERVER_TOMCAT_THREADS_MAX:該屬性控制 Tomcat 服務器將創建的請求處理線程的最大數量。默認值為 200。
  • SERVER_TOMCAT_THREADS_MIN_SPARE:該屬性為嵌入式 Tomcat 服務器設置了最小備用線程數。默認值為 10。
  • SPRING_MAIN_LAZY_INITIALIZATION:將該屬性值設置為 true 意味著應用程序中的所有 bean 都將延遲初始化。這將有助于縮短啟動時間。
  • JAVA_TOOL_OPTIONS:使用該屬性,我們可以向 JVM 傳遞一些額外的參數。讓我們來談談其中的每個參數意義。
  • -XX:+UseSerialGC:這個參數會使 JVM 使用單線程進行內聯垃圾收集,而不是使用專用的 GC 線程。
  • -Xss512k:這個參數將每個線程的堆棧大小限制為 512KB,而不是默認的 1MB。
  • -XX:MaxRAM=200m:這個參數設置 JVM 最大可使用的 RAM 內存為 200MB。

這是一些簡單的調整,但它們可以在本地開發環境中顯著減少內存消耗。當然,根據您的具體情況,您可能需要進一步進行調整。這只是一個起點,您可以根據實際需求進行優化。

總結

總而言之,通過適當配置 JVM 和 Spring Boot,并理解內存消耗的原理,我們可以降低本地開發環境的內存消耗,提高工作效率。希望這些提示能對您有所幫助!

責任編輯:武曉燕 來源: waynblog
相關推薦

2019-07-15 10:00:53

DockerJava容器

2011-05-24 16:09:57

Androi

2019-07-15 16:00:24

Docker架構容器

2012-08-17 11:04:57

IBMdW

2022-09-19 00:37:13

SaaS云計算開發

2010-02-05 18:21:24

Android應用程序

2024-01-18 07:53:37

2010-08-26 22:05:05

2023-03-01 13:54:53

Springpostion?繼承

2018-12-11 11:41:14

物聯網應用程序IOT

2023-11-06 13:11:22

Docker映像Builkit

2013-11-19 15:35:01

2009-11-16 17:33:47

2019-03-06 15:02:56

應用程序Windows 10 右鍵單擊菜單

2021-11-24 09:00:00

云計算開發應用

2011-02-22 14:42:52

AndroidPad

2017-09-20 09:46:38

Spring BootSpring Clou內存

2010-08-12 15:10:17

Flex4

2010-09-10 09:50:33

iPhone軟件iPhone

2023-06-12 17:59:48

點贊
收藏

51CTO技術棧公眾號

亚洲女子a中天字幕| 亚洲欧洲av在线| 91精品视频在线看| 爱爱精品视频| 久久精品国产久精国产一老狼 | 欧美三片在线视频观看| 国产精品久久久毛片| 成人免费视频视频在线观看免费| 日韩一区二区电影在线观看| 亚洲黄色成人| 岛国视频一区免费观看| 在线中文字幕第一区| 国产在线视频2019最新视频| 久久免费大视频| 成人有码视频在线播放| 色男人天堂综合再现| 国产精品欧美激情在线播放| 国产欧美日韩精品一区二区免费 | 亚洲日本va午夜在线电影| 精品国产凹凸成av人网站| 亚洲午夜色婷婷在线| a级影片在线| 精品国产伦一区二区三区免费| 国产美女在线观看| 日韩福利视频在线观看| 日韩脚交footjobhd| 在线观看日韩视频| 日韩欧美高清一区二区三区| 6080yy精品一区二区三区| 日韩欧美国产大片| 成人国内精品久久久久一区| 一区视频在线| 日韩国产在线一区| 久久精品国产999大香线蕉| 宅男av一区二区三区| 成人永久aaa| 一区二区三区 欧美| 亚洲国产精品久久不卡毛片| 黄色在线免费观看大全| 欧美日韩国产系列| 麻豆免费在线| 欧美噜噜久久久xxx| 国产精品嫩模av在线| www.久久爱.cn| 日本中文字幕一区| 成人小视频在线看| 亚洲一区二区三区在线看| 毛片免费在线| 亚洲天堂av综合网| 伊人春色精品| 亚洲精品中文字幕在线| 国产亚洲精品福利| 国产免费av高清在线| 亚洲亚裔videos黑人hd| 巨人精品**| 久久久久资源| 久久五月婷婷丁香社区| 黄色在线免费观看大全| 中文字幕少妇一区二区三区| 欧美美女在线观看| 亚洲制服中文| 亚洲一区二区在线视频| 欧美videossex另类| 91av在线播放视频| 久久综合九色| 午夜在线观看av| 精品视频1区2区| 日韩午夜视频在线| 91久久精品www人人做人人爽 | 亚洲精品国产成人久久av盗摄 | 福利一区二区三区视频在线观看| 57pao成人国产永久免费| 亚洲深夜av| 天天操,天天操| 日韩欧美一级在线播放| 欧美18xxxx| 99热都是精品| 在线视频你懂得一区| 四虎国产精品成人免费影视| 91一区二区三区| 91亚洲精品久久久蜜桃| 成人黄色在线电影| 国产精品户外野外| 成人丝袜18视频在线观看| av在线天堂| 日韩美女视频在线观看| 国产一区二区在线电影| 国产大片在线免费观看| 久久久久久国产精品美女| 日本 国产 欧美色综合| 日本一区高清| 欧美重口另类videos人妖| 风流少妇一区二区| 快射视频在线观看| 91九色综合久久| 国产精品久久久久aaaa樱花 | 亚洲视频电影图片偷拍一区| 日韩精品91| 在线视频日韩一区| 日韩精品中文字幕在线播放| 婷婷综合伊人| 2019中文字幕视频| 色爱av美腿丝袜综合粉嫩av| 久久免费国产| jizz在线观看视频| 国产欧美日韩精品丝袜高跟鞋| 2020国产精品久久精品美国| 欧美亚洲日本精品| 欧美国产综合视频| 欧美影院精品一区| 91欧美在线| 毛片中文在线观看| 久久久人成影片一区二区三区| 国产精品香蕉一区二区三区| 大香伊人久久| 四虎永久国产精品| 欧美一区二区三区四区视频| 一区视频在线| 麻豆影院在线观看| 久久久一本精品99久久精品66 | 亚洲一区在线日韩在线深爱| 国产精品91在线观看| **网站欧美大片在线观看| 欧美成人一级| 欧美日韩亚洲一| 久久久精品一区二区三区| 成人av一区二区三区| 黄色成人在线观看网站| 激情五月宗合网| 欧美美女18p| 国产日韩精品一区二区三区在线| 久久久久毛片免费观看| 黄色片在线免费| 51久久精品夜色国产麻豆| 一区二区三区在线高清| 青青草原综合久久大伊人精品 | ady日本映画久久精品一区二区| 色欲av无码一区二区人妻| 中文国产成人精品| 99精品视频在线观看免费| 欧美美女福利视频| youjizzxxxx18| 国产福利精品在线| 日韩欧亚中文在线| 国产亚洲精品自拍| 国产不卡网站| 丁香婷婷激情网| 欧美亚洲国产精品| 欧美日韩在线免费| 一区二区91| 性欧美18~19sex高清播放| 欧美二区在线视频| 91成人免费观看网站| 亚洲午夜激情av| 亚洲每日更新| 男人皇宫亚洲男人2020| 国产无套内射久久久国产| 国产成人精品网站| 欧美日韩在线播放一区| 免费成人在线观看| 24小时成人在线视频| 视频免费观看| 日韩欧美三级一区二区| 久久视频精品在线| 精品久久久视频| 久久成人av少妇免费| 亚洲日本va中文字幕| 青青国产在线| 国产日本欧美在线| 韩剧1988免费观看全集| 色偷偷成人一区二区三区91| 精品一区二区三区影院在线午夜| 在线观看视频一区二区三区| 一不卡在线视频| 99re99热| 97avcom| 欧美一区二区三区在线| 久久女同互慰一区二区三区| 中文字幕一区二区av| 免费观看一级欧美片| 美女视频黄a视频全免费观看| 精品日韩美女| 欧美老少配视频| 欧美日韩在线播放三区四区| jlzzjlzz亚洲日本少妇| 欧美~级网站不卡| 91精品亚洲一区在线观看| 高清毛片在线看| 日韩a在线播放| 国产区一区二区| 久久久久久久久久久亚洲| 91精品国产色综合久久不卡蜜臀| 国产网站一区二区| 噜噜噜在线观看免费视频日韩| 一区二区三区欧洲区| 久久久久久国产精品免费无遮挡 | 97caopron在线视频| free性亚洲| 中国一级大黄大黄大色毛片| 国产视频观看一区|