2

我正在使用 node.js 来缩小在 require.js 依赖方案下打包的 javascript 文件,而 r.js 实际上是在进行缩小。(见:http ://requirejs.org/docs/optimization.html )

看起来这种缩小策略对于并行化来说已经成熟了。也就是说,每个 javascript 都是独立缩小的,并且节点本身应该在 bash-shell 上下文中是可分叉的。

有没有人试过这个?现在,根据“时间”,我必须等待大约 4m 43s 才能完成当前的缩小过程。

我想回答的一些问题是:可以并行启动多个节点实例吗?如果多个缩小并行进行,r.js 是否会保持任何会被破坏的状态?

提前致谢。另外,如果没有人为 node / r.js 构建了并行工具,那么请告诉我,如果有需求,我可能会草草一些东西。

4

2 回答 2

0

我决定并行执行几个后台 r.js 作业(使用后台进程“&”以及“等待”)。结果:r.js 错误地显示此消息:

Error: nope
    at check (/path/to/bin/r.js:2744:23)

并行uglification快了大约1m,但由于上述错误,结果毫无用处。显然,并行运行 node.js / r.js 进程存在问题。

我正在恢复到顺序 r.js 作业模型,因为它正在产生工作结果。如果有人解决了并行问题,请联系我。

关于并行作业,除了我在这里采用的方法之外,gnu.org 上还有一个更通用的工具:GNU 并行,位于http://www.gnu.org/software/parallel/

于 2013-05-15T19:24:27.847 回答
0

不确定它是否对您有帮助,但我编写了一个 node.js 包,它并行运行 uglifyjs 以加速 js 文件的 uglifying 树(我的产品的运行时间从 2.5 小时缩短到 20 分钟)。

它应该很容易适应运行其他任何东西。

见: https ://github.com/bitwombat/parallel-uglifyjs

于 2015-11-19T02:25:11.160 回答