壓測的問題排查

對秒殺系統進行壓力測試

csv文件內容有5000個用戶;執行緒數設置1000並循環10。查詢商品詳情

image-20220407181518518

1、 故障現象

出現執行緒未釋放、堵塞,服務介面無法響應。

2、問題定位

定位問題進程:使用top命令查看資源佔用情況

image-20220407182916717

定位問題執行緒:使用 ps -mp pid -o THREAD,tid,time 命令查看該進程的執行緒情況,發現該進程的多個執行緒佔用率很高

image-20220407182927120

查看問題執行緒堆棧:使用 jstack 命令列印執行緒堆棧資訊,命令格式:jstack pid |grep tid -A 30

image-20220407183024807

記憶體問題定位:使用 jstat -gcutil 命令查看進程的記憶體情況

image-20220407183127759

垃圾回收統計:

image-20220407183729880

  • S0:倖存1區當前使用比例
  • S1:倖存2區當前使用比例
  • E:伊甸園區使用比例
  • O:老年代使用比例
  • M:元數據區使用比例
  • CCS:壓縮使用比例
  • YGC:年輕代垃圾回收次數
  • FGC:老年代垃圾回收次數
  • FGCT:老年代垃圾回收消耗時間
  • GCT:垃圾回收消耗總時間
Tags: