問題描述 應用收到頻繁Full GC告警 問題排查 登錄到對應機器上去,查看GC日志,發現YGC一分鍾已經達到了15次,比Full GC還要頻繁一些,其中Full GC平均10分鍾超過了4次,如下圖 使用jstat -gcutil 5280 1000查看實時GC情況 ...
問題源起 上游系統通過公司rpc框架調用我們系統接口超時 默認超時時間為 ms 數量從 次 分突然上漲到 次 分,在發生變化時間段里我們的系統也沒有做過代碼變更,但上游系統的調用確發生了變化。由於處於主要鏈路上,sre同學找過來詢問原因,所以開始了問題排查。 問題初步定位 排查rpc超時的基本思路是這樣的: 服務端處理確實超時 服務端或者客戶端由於某種原因卡住 a 磁盤清理 b tr線程池 c ...
2017-04-14 22:42 3 19229 推薦指數:
問題描述 應用收到頻繁Full GC告警 問題排查 登錄到對應機器上去,查看GC日志,發現YGC一分鍾已經達到了15次,比Full GC還要頻繁一些,其中Full GC平均10分鍾超過了4次,如下圖 使用jstat -gcutil 5280 1000查看實時GC情況 ...
這幾天在寫一個存儲過程,反復優化了幾次,從最開始的7分鍾左右,優化到最后的幾秒,並且這個過程中我的導師幫我指點了很多問題,這些指點都是非常寶貴的,獨樂樂不如眾樂樂,一起來分享這次的優化過程吧。 這個存過程的需求是這樣的,抓取某個時間段內的訂單明細,然后計算並匯總到某表即可。 於是乎,我寫出 ...
我們經常會遇到帶有exists這種形式的語句,官方描述如下,一般對應於子查詢語句返回的布爾值: 在例子中可以看到: 原始sq ...
糟糕!運行着的線上系統突然卡死無法訪問,萬惡的JVM GC! 基於JVM運行的系統最怕什么? 在JVM運行的時候,最核心的內存區域,其實就是堆內存,在這里會放各種我們系統中創建出來的對象。 而且堆內存里通常都會划分為新生代和老年代兩個內存區域,對象一般來說都是優先放在新生代的。在年輕代 ...
Java內存分配機制 摘自:http://www.cnblogs.com/zhguang/p/3257367.html 這里所說的內存分配,主要指的是在堆上的分配,一般的,對象的內存分配都是在堆上 ...
這個是之前處理過的一個線上問題,處理過程斷斷續續,經歷了兩周多的時間,中間各種嘗試,總結如下。這篇文章分三部分: 1、問題的場景和處理過程;2、GC的一些理論東西;3、看懂GC的日志 先說一下問題吧 問題場景:線上機器在半夜會推送一個700M左右的數據,這個時候有個數據置換的過程,也就是說 ...
最近線上某站點young gc有點頻繁,經過排查確定了問題,這里記錄一下 遇到GC,三步走 1. 確認是哪些對象引起的GC 2. 找到這些對象是哪里構造的 3. 根據情況進行優化。 確認是哪些對象引起的GC 一般情況下,我們可以通過jmap ...
一.環境說明: 操作系統:CentOS 6.5 x86_64 數據庫:Mysql 5.6.22 服務器:阿里雲VPS,32G Mem,0 swap 二.問題情況: 1.某日發現公司線上 ...