【发布时间】:2016-07-14 07:44:07
【问题描述】:
我们刚刚用 node 和 react 构建了一个电子应用程序。该应用程序在每个平台上都运行顺利,我们对结果非常满意。 现在我们收到了在 dvd 上分发该应用程序版本的请求(这意味着我们需要直接从光盘运行该应用程序,而无需将其安装在本地驱动器上),因此我们只是将其刻录并尝试启动它。 该应用程序运行良好,但问题在于加载时间,因为该应用程序运行几乎需要 2 分钟,而没有任何反馈给最终用户。 这是由于从光驱加载大量文件的开销非常慢。 所以我们需要一些想法来加快速度,或者至少在加载期间向用户展示一些东西。 这可能是一个带有启动屏幕的启动器应用程序,但它必须在 mac、win 和 linux 上运行。 我们在 QT 考虑过,但我们想要一些不那么复杂的东西..
欢迎提出任何意见
【问题讨论】:
-
您的 DVD 可能在读取磁盘时出现问题。 dvd 的速度足以在几秒钟内加载应用程序。测试磁盘读取性能
-
我在 18 种不同的硬件组合上对其进行了测试。传输大文件时光驱速度很快,但如果您需要读取多个小文件,则速度非常慢。即使是电子示例应用程序也需要超过一分钟才能从 cd/dvd 加载
-
如果您有大量非常小的文件,则可能是访问时间过慢造成了损害。如果可能,您应该将所有罚款合并到一个二进制文件中,加载到内存中并从那里读取单个文件块。
-
Electron 支持将应用程序打包到 asar 档案中。我对此了解不多,但它可能有助于从缓慢的存储中加载时间。 github.com/atom/electron/blob/master/docs/tutorial/…
-
您可以使用众多解压缩系统之一打包您的应用程序,然后从解压缩到临时位置的存档中运行它。
标签: javascript qt electron dvd