Linux的內存是虛擬內存,是物理內存和交換分區swap。
內存:
頁:4K, 硬盤:塊。
尋址:
空間:內存的合并。大頁內存。
free命令:
[root@vm1 ~]# free -htotal used free shared buff/cache available
Mem: 1.8G 153M 1.4G 9.5M 270M 1.5G
Swap: 4.0G 0B 4.0G
[root@vm1 ~]# free -mtotal used free shared buff/cache available
Mem: 1819 153 1394 9 270 1513
Swap: 4095 0 4095
Linux會大部分把內存分配給buff/cache, 我們只要看available(可用的內存)的值。
共享內存:進程間通信就是使用共享內存。
vmstat:
交換分區,能不使用,盡量不使用交換分區,可以通過更改內核參數來優化。
si:數據從交換分區讀取到內存的大小。(內存進來)
so:數據從內存到交換分區的大小。(內存出去)
bi:從交換分區讀到塊的。
bo:內存寫到塊里的。
內存使用指標:
固定的值也沒有。一般經驗值:設置為80%就報警。
寫代碼的時候,如果看到內存一直上漲,就說明代碼有問題。
硬盤:
IOPS:IO's per second
順序IO:順序IO塊,接近內存的速度。kafka,消息隊列。
隨機IO:速度慢。
磁盤監控:
磁盤使用率:
磁盤IO:
iptop工具:
yum install -y iotop
直接執行iotop命令:?
?
?
iotop工具,可以看到哪個進程在大量地使用IO。
順便再復習掌握下dd命令。
?
iostat:
?
網絡:
iftop命令:
多個地點Ping服務器,網站測速 - 站長工具
測試京東網站:
?這個功能還是有用的。我們拿到工具就能測試。
IBM nmon工具的使用: