nodeJS / Electron渲染页面的速度比Chrome慢

use*_*325 6 performance node.js electron

我们正在使用Electron(nodeJS 7.4.0 / Electron 1.6.11)构建餐厅POS系统。对于POS系统,速度和可靠性是两个最重要的要求,并且在花了一些时间构建应用程序之后,我们不再确定Electron是否适合我们。

速度似乎是主要问题。为了进行测试,我们构建了一个仅显示2个“ hello world” html页面的应用程序,没有任何其他javascript或任何其他资产。在现代iMac上运行时,在页面之间切换时会有短暂的延迟,并且应用程序在页面加载之间闪烁白色。在运行Windows 7的旧PC上,最多需要1秒才能在这两个页面之间进行切换。对于空白的“ Hello World”页面,Mac上的加载时间为167毫秒。

现在,直接在Chrome浏览器中运行这两个页面,这些页面会立即加载,而无需任何加载时间,并且页面加载之间不会出现白色闪烁。在网络检查器中40毫秒。

加载Javascript文件和图像的页面越复杂,速度的差异就越显着(即使所有内容都在本地加载)

Electron vs Chrome加载时间更长的原因是什么,我们可能做错了什么?

Hello World页面在Electron上加载的屏幕截图 Chrome浏览器中的Hello World页面加载屏幕截图

jtw*_*ers 0

您无法将NodeJS 7.4.0 (with v8 5.4.500.27)Electron 1.6.11与上一版本 Chrome 中的当前版本 v8 进行比较。

NodeJS、v8 和 Electron 在每个版本更新中都有很多性能实现,甚至 RAM 管理也更好。

NodeJS我建议升级和的版本Electron并再次测试您的结果。

此外,如果您在 NodeJs 服务器上通过 http 提供 html,它将比 Electron 运行得更快,因为 Electron 在幕后做了很多事情来为您提供内容。同样,只要您使用最新版本,时间差距应该会更小:)