国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
服務器維護常用命令(楊杰)

一、    常用命令

pstree查看進程樹。可以很清楚的看到進程之間的關系;

Top:查看各進程的占用資源的情況;

du -h --max-depth=1 顯示當前目錄中所有子目錄的大小;

w 查看服務器的load情況

bigip 在預發(fā)布機器上使用命令bigip sh ${ip/機器名} {username}” 可以檢查機器是在F5上狀態(tài)是disable還是enable.

gm.sh "curl http://localhost/monitor/ok.html"     在預發(fā)布機器上檢查各個服務器的健康檢查頁面。

gm.sh "ps amx | grep httpd | wc -l"   在預發(fā)布機器上檢查各個服務器的http鏈接數(shù)

 

二、    proc下的偽文件。 如:meminfo 檢查內(nèi)存信息,cpuinfo 內(nèi)核信息。

cat /proc/cpuinfo 檢查cpu的信息。我們的一些程序根據(jù)cpu內(nèi)核的數(shù)量做過優(yōu)化(如:memcached,假的多核可能會引起一些bug。)

如上圖 baike-web1 4核的,baike-web2是雙核超線程的。

擁有相同 physical id 的所有邏輯處理器共享同一個物理插座。每個 physical id 代表一個唯一的物理封裝。Siblings 表示位于這一物理封裝上的邏輯處理器的數(shù)量,如果不存在表示1。每個 core id 均代表一個唯一的處理器內(nèi)核。所有帶有相core id 的邏輯處理器均位于同一個處理器內(nèi)核上。如果有一個以上邏輯處理器擁有相同的 core id 和 physical id,則說明系統(tǒng)支持超線程(HT)技術。如果有兩個或兩個以上的邏輯處理器擁有相同的 physical id,但是 core id不同,則說明這是一個多內(nèi)核處理器。

 

、    網(wǎng)絡連接

netstat: -t: 顯示TCP鏈接信息;-u: 顯示UDP鏈接信息;-n直接顯示ip,不做名稱轉(zhuǎn)換;-p: 顯示相應的進程PID以及名稱(要root權限)

如果要查看關于sockets更詳細占用信息等,可以使用lsof.

a)   netstat -anp|grep Java|grep 3306|wc –l檢查Java進程中數(shù)據(jù)庫的鏈接數(shù)量

b)   netstat -na|grep ESTABLISHED|awk '{print $4}'|grep ":80$"|wc –l  檢查已經(jīng)建立的80端口的連接數(shù)

c)         netstat -na |grep “:2088”  檢查搜索引擎的連接數(shù)

 

、    dump java進程堆棧

a)   kill -3 ${java進程Id},可以在java進程的日志中看到輸出(jboss 記錄在jboss_stdout.log)

b)   jstack $pid.      直接dump當前進程的的堆棧信息。

對于thread dump信息,主要關注的是線程的狀態(tài)和其執(zhí)行堆棧,特別是load很高的時候,通過thread dump可以看到線程到底在干嘛,從中找出問題。 線程的狀態(tài)一般為三類: runable:當前可以運行的線程, Waiting on monitor:線程主動wait, Waiting for monitor entry:線程等鎖. Cpu很忙則關注runnable的線程,Cpu閑則關注waiting for monitor entry的線程。

 

 

、    java內(nèi)存溢出

1、 可以先用 jstat  -gcutil ${pid} {interval}  看看java內(nèi)存回收的動態(tài)信息。 interval– 表示間隔打印的時間,單位為毫秒

圖中參數(shù)含義如下:

S0  — Heap上的 Survivor space 0區(qū)已使用空間的百分比

S1  — Heap上的 Survivor space 1 區(qū)已使用空間的百分比

E   — Heap上的 Eden space 區(qū)已使用空間的百分比

O   — Heap上的 Old space 區(qū)已使用空間的百分比

P   — Perm space 區(qū)已使用空間的百分比

YGC — 從應用程序啟動到采樣時發(fā)生 Young GC 的次數(shù)

YGCT– 從應用程序啟動到采樣時 Young GC 所用的時間(單位秒)

FGC — 從應用程序啟動到采樣時發(fā)生 Full GC 的次數(shù)

FGCT– 從應用程序啟動到采樣時 Full GC 所用的時間(單位秒)

2. 使用jmap dump  java內(nèi)存中全部對象,分析死鎖的位置。

jmap -histo $pid  快速查看當前內(nèi)存中各個Java對象的大小和數(shù)量

jmap -dump:live,format=b,file=heap.dmp $pid   可以將jvm堆棧中的信息全部復制到文件head.dmp中,注意這個heap.dmp文件會比較大, 線上jboss分配的內(nèi)存一般為2g,當內(nèi)存溢出時dump出來的head.dmp文件也是2g,所以dump的時間也比較長,一般會有半個小時.

日志文件生成后運行命令“jhat -J-mx768m -port 7001 heap.dmp”分析堆棧日志(注意不要在線上服務器上分析)。 訪問 http://localhost:7001可以查看分析報告。

或者可以使用eclipse mat插件分析,它可以以圖形形式分析出內(nèi)存中的java對象的分布: (插件地址http://download.eclipse.org/mat/1.0/update-site/).導入后可以生成一個圖形報表

 

、    7001端口報警。

一般情況是jboss掛掉了。因為java進程已經(jīng)退出。1首先需要查看:jboss_stdout.log,它會告訴你jboss crash的一些信息,它還會告訴你在jboss  crash有一個詳細的出錯報告, 位置在/web-deploy/bin/hs_err_pid.log

 

、    cookie日志分析

cat cookie_log|awk '{print $1} '|grep -v "172.16"|grep -v "127.0.0.1"|sort|uniq -c|sort -n |tail -n 10  提取訪問量前10位的ip.

cat cookie_log |grep '09/Dec/2010:18:01'|wc –l 檢查18:01這一分鐘的訪問總量。

cat cookie_log|grep 'HTTP/.../" [4|5]'|more  查看響應出錯的請求。

cat cookie_log |grep -E 'Googlebot|Baiduspider'|wc –l統(tǒng)計googlebaike爬蟲的訪問量。

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
JDK自帶JVM調(diào)優(yōu)工具,一次性打包講給你聽
JVM性能調(diào)優(yōu)監(jiān)控工具jps、jstack、jmap、jhat、jstat、hprof使用詳解
性能測試必備監(jiān)控技能jvm之jdk命令行工具篇16
JVM定位占用cpu過高堆棧信息(Linux)
[轉(zhuǎn)]window下使用SetUnhandledExceptionFilter捕獲讓程序的崩潰
windbg使用教程(調(diào)試異常及死鎖等)
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服