一直慢:
系統資源:記憶體 cpu io是否被別的服務占用
應用資源:
記憶體耗盡:codecache jit中的編譯的**結果無處儲存,導致一直解釋執行了
受到了攻擊,cpu被占用 如 dom
資料量\使用者量\介面呼叫次數增加
偶爾突然變慢:
gc導致,gc頻率和時間
發生了大量的異常,有異常日誌分析
網路原因,網路抖動
如果還不能確定具體問題,對應用進行 profiling 也是個辦法,但因為它會對系統產生侵入性,如果不是非常必要,大多數情況下並不建議在生產系統進行。
profiling收集資訊的三種方式:
事件方法
統計抽樣方法
植入附加指令
top結果都是啥?
gc頻率和時間怎麼看?gc頻率和時間的正常範圍是多少?
jstat -gc 結果中 mc ccsc含義
mc:方法區大小
mu:方法區使用大小
ccsc:壓縮類空間大小
ccsu:壓縮類空間使用大小
dstat這個命令也很有用?
展示net、cpu、load、dsk、memory、swap、system等內容,
注意提供了net相關狀態
有乙個好處是可以將結果輸出到csv
# dstat –output /tmp/sampleoutput.csv -cdn
結果如下圖:
怎麼檢視機器io占用情況?
iostat 或 sar
怎麼檢視機器網路狀況
dstat
後台服務小點
很多東西本來就存在,只是自己不懂,記錄在此,以便日後複習唄。今天碰到乙個問題就是專案中的靜態頁面是分開的,比如當面部落格頁面,它的頭是單獨的乙個html檔案,而下來的內容又是另外乙個,從專案本身以及在布置到伺服器上都沒有發現拼裝過程,於是好奇之,這是為啥呢,原來nginx早已具有這樣的功能,就是ss...
Linux 後台服務
方法一 fork方式 1.fork乙個子程序,父程序退出,子程序成為孤兒程序,被init程序接管 2.呼叫setsid建立新的程序會話 3.將當前工作目錄切換到根目錄 4.將標準輸入,輸出,出錯重定向到 dev null linux後台程序,fork方式 include include includ...
Mac 後台服務
mac 的後台服務通過launchctl工具實現 也可以使用linux下的crontab 但官方建議使用launchctl。使用launchctl非常簡單,根據需要編寫plist指令碼即可。plist指令碼存放路徑為 library launchdaemons或 library launchagen...