Amazon-Ec2
為什麼有時 AWS EC2 執行速度很慢?
我只做一件事這個伺服器 - 編碼影片
ffmpeg
。有時它確實工作正常,有時它真的很慢。我執行相同的命令只是為了測試:
$ sudo time ffmpeg -i test.mp4 -c:a copy -vf 'drawbox= : x=0 : y=0 : color=invert : t=2' output1.mp4 ffmpeg version n2.2.15 Copyright (c) 2000-2015 the FFmpeg developers built on Apr 30 2015 13:20:09 with gcc 4.8.2 (GCC) 20140120 (Red Hat 4.8.2-16) ...... 16.24user 0.04system 0:16.30elapsed 99%CPU (0avgtext+0avgdata 60972maxresident)k 0inputs+6088outputs (0major+15811minor)pagefaults 0swaps
5 小時後,我再次執行它,因為我看到它再次開始緩慢執行。
$ sudo time ffmpeg -i test.mp4 -c:a copy -vf 'drawbox= : x=0 : y=0 : color=invert : t=2' output1.mp4 ....... 163.41user 0.84system 2:46.90elapsed 98%CPU (0avgtext+0avgdata 60988maxresident)k 0inputs+6136outputs (0major+15814minor)pagefaults 0swaps
如您所見,它比第一次花費了 10 倍的時間。(1)
16.24user
(2)163.41user
任何想法如何解決?
根據您的實例類型(可突發 cpu 實例),您可能正在處理 CPU 信用。
==> https://stackoverflow.com/questions/28984106/whats-is-cpu-credit-balance-in-ec2
如果您發現非突發實例的波動很大,您可能需要停止並啟動(而不是重新啟動)實例。這將使實例出現在不同的管理程序(主機箱)上。可能是目前共享主機存在問題,在新主機上啟動 vm 時將得到解決。
我使用了一堆 EC2 實例;我還看到完成相同工作所需的時間差異很大 - 一次又一次地處理相同的影片。有時,兩次執行非常快,變異數小於 1%;其他執行變異數是 5 到 10 倍!我注意到這些問題更多地發生在我們較小的實例上。我們有一些是 M*.large 或 C*.large 大小,這些實例沒有這個問題(盡可能多)