標籤:

誰動了我的XX

1.誰動了我的內存

設置JVM參數的時候,我們需要配置Java虛擬機分配的堆大小。通常而言這個堆大小不宜超過宿主機器的物理內存的一半。

有一次我觀察監控系統中的監控報表,發現宿主機器的空閑內存比較低,於是我就懷疑是jvm配置的參數有問題,然後我就去看了下配置。宿主機器物理內存是8g,堆大小配置是2g,並且機器上其他應用佔用內存有限,那麼多餘的內存去哪裡了?

Linux系統會自動做文件緩存---cached,通過將文件預讀到內存提高系統的性能。那麼linux系統的文件緩存可能會導致內存不夠用的情況么?答案是不會的,這部分內存只是操作系統借用的,在內存不足的情況下會自動歸還這部分內存.

2.誰動了我的CPU

現在的程序都是運行在雲主機之上,申請雲主機時需要指定配置(內存,計算能力等).但是指定的內存並不是我們最終獲得的內存(雲主機的資源都會存在超售的情況),cpu.steal 就是表名我們指定的計算資源被佔用了多少,我們實際可使用就是 配置-cpu.steal 。 所以當cpu.steal偏高時,我們的應用就可能處在一個計算資源可能不夠的情況需要關注

推薦閱讀:

請推薦 編程書籍 結合各位自己的實際?
【技術人快報】巴塞羅那擁抱開源Linux+Python需求增速達174%,AI人才缺口仍超百萬
linux的epoll_wait以及epoll_ctl是否線程安全?
檢查系統和硬體信息的命令
為什麼桌面版 Linux 運行 ping 程序,不需要 root 許可權?

TAG:Linux |