无头铬-性能

时间:2019-03-14 10:43:17

标签: google-chrome video google-chrome-devtools chromium headless

我一直在努力应对无头铬的性能。我的计划是以至少30fps(或更高)的速度捕获加载的网站。但是,随着分辨率的提高,返回帧的频率下降。

对于720p的窗口分辨率,只要将分辨率更改为1080p,我就可以轻松地达到〜35fps,然后帧数降低至〜20fps甚至更低。 我在装有30个CPU的计算机上的Google Cloud Compute Engine上运行铬,完全没有完全使用。

你们中有人遇到过类似的问题吗?

一些设置:

  • 要捕获帧,应用程序将使用Chrome devtools事件“ Page.screencastFrame”。
  • Google Cloud Compute Engine-30CPU,30GB内存
  • 标志:-disable-translate --disable-extensions --disable-background-networking --safebrowsing-disable-auto-update --disable-sync --metrics-recording-only --disable-default-apps --no-first-run --remote-debugging-port=9222 --user-data-dir=/var/app/CHROME --disable-setuid-sandbox --window-size=1920,1080 --disable-gpu --hide-scrollbars --user-agent=true --remote-debugging-address=0.0.0.0 --no-sandbox --no-zygote --headless --autoplay-policy=no-user-gesture-required --disable-notifications --disable-logging --disable-permissions-api

1 个答案:

答案 0 :(得分:0)

我发现,如果我在安静的时间内运行我的容器,它们的运行速度会更快,从Gitlab-CI钻机转移到一台磁盘速度更快的机器上,会改善它。

容器的大小很重要(高山),容器主机上的SSD也非常快。在新设备上运行带有v77铬的alpine v3.10容器,我能够将时间从117sec减少到43sec,但是Alpine不太灵活,如果您必须编译内容,它的大小几乎与ubuntu容器一样大。