Linux
找出瓶頸的技術是什麼?
我在 Digital Ocean 上為最小的水滴設置了幾個月的 wordpress。
最近,我的部落格在網上瘋傳(超過 1000 次 Facebook 分享),伺服器需要 50 多秒才能做出響應。(Google分析顯示今天幾乎一整天我的部落格上同時有大約 40 人。)
我詢問了 Digital Ocean 支持團隊,他們告訴我我的 512 mb RAM 太小了。
但我使用’free -m’看看
total used free shared buffers cached Mem: 490 465 24 64 94 136 -/+ buffers/cache: 234 256 Swap: 999 0 999
所以我想我有 256 mb 記憶體可用?
我告訴他們,他們說“雖然它可能會顯示 100MB 的可用記憶體,但這可能只是在它殺死了一些服務以節省記憶體之後。”
但我用’top’看看
%Cpu(s): 0.3 us, 0.0 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
我發現 CPU 保持 92~100% id,所以我認為我的 CPU 並不忙。
那麼如何才能找到瓶頸呢?
在我為升級支付更多費用之前,我想知道瓶頸是什麼。
在查看性能問題時,重要的是要記住**“四大”**:
-CPU -Memory
-Disk
-Network 我非常喜歡使用
CPU和記憶體使用率、磁碟使用率和網路流量。請記住,這些指標僅在伺服器處於負載狀態並遇到此問題時才有用。
當請求頁面時,上述 4 大中的任何一個都可能導致處理中的大量延遲。你提到這個網站是一個部落格,但沒有提到內容是否是動態生成的,這會給這個等式增加另一層——數據庫。較長的查詢響應時間可能會導致涓滴效應,從而導致頁面載入時間過長。
atop``iotop``iftop