jvm常見調優

FullGC的STW停頓時間長

單體應用一臺硬件上的jvm的部署策略

單獨的jvm管理堆內存

對于用戶停頓時間敏感的系統,并不是必須使用Shenandoah或者ZGC這些明確以控制延遲為目標的垃圾回收器才能解決問題(當然,這是最好的方法),使用Parallel Scavenge/Old收集器,并且給java堆分配大內存空間也可以,但是必須把FullGC的頻率調整得夠低,比如,一天一次FullGC,可以在深夜執行定時任務觸發FullGC。
控制FullGC的關鍵是保證老年代的穩定,即要保證對象進入老年代是極少部分,大部分網站對象的生成周期都是請求級或者頁面級別的,會話級別和全局的長周期比較少,只要代碼寫的好,就可以減少FullGC。

回收大內存導致的長時間停頓,G1的增量回收可以緩解
大jvm堆分析困難,需要借助工具

使用若干個jvm建立集群邏輯來利用硬件

啟動多個jvm項目然后注冊在不同端口,在前端搭建一個負載均衡器反向代理來分配訪問(比如SessionId)

并發問題,訪問磁盤io,可能會導致IO異常
各個節點自己建立獨立的線程池,負載均衡必須弄得好,或者使用中央式的線程池

更換垃圾回收器減少GC時延

修改堆區域內存大小減少GC頻率

升級JDK

進入安全點耗時太長

啟動時間長(類加載耗時長)

異步調用的雙方的服務速率不匹配導致超過了虛擬機的承受能力

導致等待的Socket連接太多,線程太多,最終超過虛擬機的承受能力。

元空間大小的配置

可能調用外部命令導致耗時長

比如在java中調用shell

直接內存的回收

虛擬機雖然會對直接內存進行回收但是直接內存卻不能像新生代老年代那樣,發現空間不足就主動通知垃圾回收器進行GC,他只能等FULLGC時對其順便GC。

內存泄漏

堆轉儲快照

圖形化分析內存空間

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/39630.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/39630.shtml
英文地址,請注明出處:http://en.pswp.cn/web/39630.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

centos7安裝寶塔面板

一、進入root模式 sudo su二、安裝寶塔面板 if [ -f /usr/bin/curl ];then curl -sSO https://download.bt.cn/install/install_panel.sh;else wget -O install_panel.sh https://download.bt.cn/install/install_panel.sh;fi;bash install_panel.sh ed8484bec

如何利用小程序容器技術搭建小程序生態?

小程序,作為現代移動互聯網生態中的重要基礎設施,正以其獨特的創新性和便捷性展現出勃勃生機。截至2021年,全網小程序的數量已經突破了700萬,其中微信小程序的開發者達到了300萬之多。這一數字不僅代表了小程序在技術層面的成熟度…

7.4總結

今天寫了幾道題目 最近,一年級學生馬克西姆學習了科拉茲猜想,但他在講課時沒有太注意,所以他認為猜想中提到了以下過程: 有一個變量 $$$x$$$ 和一個常數 $$$y$$$ 。下面的操作要執行 $$$k$$$ 次: - 將 $$$x$$$ 增加…

Studying-代碼隨想錄訓練營day29| 134. 加油站、135. 分發糖果、860.檸檬水找零、406.根據身高重建隊列

第29天,貪心part03,快過半了(? ?_?)?💪,編程語言:C 目錄 134.加油站 135. 分發糖果 860.檸檬水找零 406.根據身高重建隊列 134.加油站 文檔講解:代碼隨想錄加油站 視頻講解:手撕加油站…

《夢醒蝶飛:釋放Excel函數與公式的力量》8.3 COUNTBLANK函數

8.3 COUNTBLANK函數 在數據處理和分析中,我們經常需要識別和統計數據集中的空白單元格。COUNTBLANK函數是Excel中用于統計某個范圍內空白單元格數量的強大工具。 8.3.1 函數簡介 COUNTBLANK函數用于統計指定范圍內的空白單元格數量。這在數據清洗、數據完整性檢查…

MySQL之備份與恢復(四)

備份與恢復 存儲引擎和一致性 3.復制 從備庫中備份最大的好處是可以不干擾主庫,避免在主庫上增加額外的負載。這是一個建立備庫的好理由,即使不需要用它做負載均衡或高可用。如果錢是個問題,也可以把備份用的備庫用于其他用戶,…

【C/C++ new/delete和malloc/free的異同及原理】

new/delete和malloc/free都是用于在C(以及C語言在malloc/free的情況下)中動態申請和釋放內存的機制,但它們之間存在一些顯著的異同點。以下是對這兩組函數/運算符的異同點的詳細分析: 相同點 目的相同:兩者都用于在堆…

C++編程邏輯講解step by step:類之間的交互

題目 設計一個點類Point&#xff0c;再設計一個矩形類&#xff0c;矩形類使用Point類的兩個坐標點作為矩形的對角頂點。并可以輸出4個坐標值和面積。 分析 1.點類&#xff0c;自然維護的是一個點的坐標&#xff0c; #include < iostream > using namespace std; class …

【C語言基礎知識點】C語言-使用 fgets 讀取包含空格的字符串

使用 fgets 讀取包含空格的字符串 // 使用 fgets 讀取包含空格的字符串 #include <stdio.h> #include <string.h> int main() { char name[100]; printf("Enter your name: "); fgets(name, sizeof(name), stdin); // 移除可能讀取到的換行符 n…

Matlab/simulink三段式電流保護

電流1段仿真波形如下所示 電流2段仿真波形如下所示 電流3段仿真波形如下所示

Centos7安裝Minio筆記

一、Minio概述 Minio是一款開源的對象存儲服務器&#xff0c;可以運行在多種操作系統上&#xff0c;包括Linux、Windows和MacOS等。提供一種簡單、可擴展、高可用的對象存儲解決方案&#xff0c;支持多種數據格式&#xff0c;包括對象、塊和文件等。Minio是一款強大、靈活、可…

WCCI 2024第三彈:忍者表演驚艷全場,盛大晚宴不容錯過

WCCI 2024第三彈&#xff1a;忍者表演驚艷全場&#xff0c;盛大晚宴不容錯過&#xff01; 會議之眼 快訊 會議介紹 IEEE WCCI&#xff08;World Congress on Computational Intelligence&#xff09;2024&#xff0c;即2024年IEEE世界計算智能大會&#xff0c;于6月30日至7月…

【前端知識】一篇速成 建議收藏

HTML基礎概念 正式敲代碼之前呢,我們先來看幾個概念: 0 靜態網頁和動態網頁 靜態網頁: 頁面的內容和顯示效果就基本上不會發生變化了--除非你修改頁面代碼。 動態網頁: 頁面代碼雖然沒有變&#xff0c;但是顯示的內容卻是可以隨著時間、環境或者數據庫操作的結果而發生改變的…

【康復學習--LeetCode每日一題】3099. 哈沙德數

題目&#xff1a; 如果一個整數能夠被其各個數位上的數字之和整除&#xff0c;則稱之為 哈沙德數&#xff08;Harshad number&#xff09;。給你一個整數 x 。如果 x 是 哈沙德數 &#xff0c;則返回 x 各個數位上的數字之和&#xff0c;否則&#xff0c;返回 -1 。 示例 1&a…

【Qt知識】window frame 對窗口坐標的影響

在Qt中&#xff0c;窗口框架&#xff08;Window Frame&#xff09;對Widget的尺寸計算和坐標定位有著直接的影響&#xff0c;這主要是因為窗口框架本身占據了一定的空間&#xff0c;包括標題欄、最小化/最大化/關閉按鈕以及邊框。這部分額外的空間在不同的應用場景下需要被考慮…

windows非白名單exe監控并殺死

需求&#xff1a;孩子在家用電腦上網課&#xff0c;總是悄悄打開游戲或視頻軟件 方案&#xff1a;指定白名單exe&#xff0c;打開非白名單的就自動被殺死&#xff0c;并記錄日志供查看 不知道是否還有更好的結果方案&#xff1f; import psutil import time import logging#…

2024.7.4 刷題總結

2024.7.4 **每日一題** 3086.拾起k個1需要的最少行動次數&#xff0c;在這道題我們可以把0看成空位&#xff0c;第二種操作相當于把一個1移動到和它相鄰的空位上&#xff0c;而第一種操作則是貪心地把和當前下標相鄰的0變成1;當maxchanges較大時&#xff0c;優先使用第一種操作…

第二十條:與抽象類相比,優先選擇接口

要定義多種實現的類型&#xff1a;JAVA有兩種機制&#xff1a;接口和抽象類。這兩種機制都支持為某些實例方法提供實現&#xff0c;但二者有個重要的區別&#xff1a;要實現由抽象類定義的類型&#xff0c;這個類必須是抽象類的子類。因為Java只允許單繼承&#xff0c;對抽象類…

使用SSE實現echarts數據實時更新

區別 SSE 和 WebSocket 原理和實現方式的區別 SSE( Server-Sent Events) SSE 是基于傳統的 HTTP 協議實現的&#xff0c;采用了長輪詢&#xff08;long-polling&#xff09;機制。客戶端通過向服務器發送一個 HTTP 請求&#xff0c;服務器保持連接打開并周期性地向客戶端發送…

內網穿透--利用everything實現目錄映射

免責聲明:本文僅做技術交流與學習... 目錄 來源文章 frp下載網址 為了隱藏: 演示: 1-靶機的everything開啟http服務 2-Linux服務器: 3-靶機windows: 4-最后訪問: 來源文章 滲透測試技巧|Everything的利用 frp下載網址 Release v0.58.1 fatedier/frp GitHub 為了隱…