記憶體資訊
psutil.cpu_times() 使用cpu_times方法獲取cpu完整資訊,需要顯示所有邏輯cpu資訊(指定變數percpu=true)
psutil.cpu_times().user 獲取單項資料資訊,如使用者user的cpu時間比
psutil.cpu_count() 獲取cpu邏輯個數,預設logical=true4
psutil.cpu_count(logical=false) 獲取cpu的物理資訊
磁碟資訊
psutil.disk_partitions() 使用psutil.disk_partitions方法獲取磁碟完整資訊
psutil.disk_usage('/') 使用psutil.disk_usage方法獲取分割槽(引數)的使用情況
psutil.disk_io_counters() 使用psutil.disk_io_counters獲取硬碟中的io個數
psutil.disk_io_counters(perdisk=true) perdisk=true,引數獲取單個分割槽io個數
網路資訊
psutil.net_io_counters() 使用psutil.net_io_counters獲取網路中的io資訊,預設pernic=false,true時輸出每個網路結構的io資訊
其他系統資訊
psutil.users() 使用psutil.users方法返回當前登入系統的使用者資訊
psutil.boot_time() 使用psutil.boot_time方法獲取開機時間,以linux時間戳格式返回
import psutil,datetime datetime.datetime.fromtimestamp(psutil.boot_time()).strftime("%y-%m-%d%h:%m:%s") 轉換成自然時間格式
系統程序管理
psutil.pids() 列出所有程序的pid
psutil.process(*) 例項化乙個process物件,引數為一程序pid
p=pstuil.process()
p.name() 程序名
p.exe() 程序bin路徑,windows下為p.exe
p.cwd() 程序工作目錄絕對路徑,win下為p,cwd
p.status() 程序狀態
p.create_time() 程序建立時間,時間戳格式
p.uids() 程序uid資訊
p.gids() 程序gid資訊
p.cpu_affinity() get程序cpu親和度,如要設定程序cpu親和度,將cpu號作為引數即可
p.momory_info() 程序記憶體利用率
p.io_counters() 程序io資訊,包括讀寫io數及位元組數
p.connections() 返回開啟程序socket的namedutples列表,包括fs,family,laddr等資訊
p.num_threads() 程序開啟的執行緒數
from subprocess import pipe
p=psutil.popen(["/usr/bin/python","-c","print('hello')",stdout=pipe]) 通過psutil的popen方法啟動的應用程式,可以跟蹤該程式執行的所有相關資訊
p.name() 'python'
p.username() 'root'
p.coummunicate() ('hello\n',none)
p.cpu_times() 得到程序執行cpu的時間
ipyip位址處理模組
ip('192.168.1').version() 返回ipv4型別
ip('::1').version() 返回ipv6型別
ip=ip('192.168.1.1')
ip.reversenames() 反向解析位址格式
ip.iptype() 192.168.1.1為
ip.int() 轉換成整數格式
ip.strhex() 轉換成十六進製制
ip.strbin() 轉換成二進位制
ip.netmask() 子網掩碼
ip.net() 輸出網路位址
ip.broadcast() 輸出網路廣播位址
print(ip(ox8080808)) 十六進製制轉換成ip格式
ip與掩碼生產網段格式
print(ip('192.168.1.0').make_net('255.255.255.0'))
print(ip('192.168.1.0/255.255.255.0',make_net=true))
print(ip('192.168.1.0-192.168.1.255',make_net=true))
ip('192.168.1.0/24').strnormal(*) wantprefixlen引數的定義.0:無返回如192.168.1.0;1:prefix格式如192.168.1.0、24;2:decimalnetmask格式如192.168.1.0、255.255.255.0;3:lastip格式如192.168.1.0-192.168.1.255
多網路計算方法
ip('10.0.0./24')'192.168.1.100' in ip('192.168.1.0/24') true
ip('192.168.1.0/24') in ip('192.168.0.0/16') ture
ip('192.168.0.0/23').overlaps('192.168.1.0/24') 返回1代表重,0代表不重疊
優化系統效能
程式框架 hibernate3 struts2 spring2 資料庫 sqlserver2008 伺服器 tomcat6 優化方法 1 配置連線池 採用的c3p0連線池 2 在程式中獲取列表時,用iterator代替list 3 在查詢之後可以使用session.clear 方法釋放快取 4 用資...
系統效能分析
當系統變慢時候,我們首先關注的可能是cpu的指標,有時候發現cpu使用率一點都不高,但是系統還是卡,這時可能就需要關心另外乙個影響效能的東西 磁碟的io效能。通過top命令中的 wa可以獲取系統當前的io狀態,如果該值居高不小,那磁碟的io可能就有問題了。另外可以通過iotop命令來詳細了解什麼程式...
系統效能分析
系統的整體效能取決於各種資源的平衡,類似木桶理論,某種資源的耗盡會嚴重阻礙系統的效能。linux中需要監控的資源主要有 cpu 主存 記憶體 硬碟空間 i o時間 網路時間 應用程式等。統效能的主要因素有 因素 說明使用者態cpu cpu在使用者態執行使用者程式所花費的時間,包括庫呼叫,但是不包括核...