【发布时间】:2024-01-20 17:19:01
【问题描述】:
我在 Jenkins 服务器上构建了一个 Angular 应用程序,该应用程序运行速度非常慢(需要 30 多分钟)。使用的命令:ng build --configuration production
但是,当我在本地 Windows 机器上运行相同的命令时,它会在大约 5 分钟内完成。
我试过设置NODE_OPTIONS=--max-old-space-size=8192,但似乎没有任何影响。
我认为问题可能在于 ng build 没有利用所有服务器内核,但不确定。
Angular 版本:
Angular CLI: 9.1.15
Node: 10.22.1
OS: win32 x64
Angular: 9.1.13
... animations, common, compiler, compiler-cli, core, forms
... language-service, localize, platform-browser
... platform-browser-dynamic, router
Ivy Workspace: Yes
Package Version
-----------------------------------------------------------
@angular-devkit/architect 0.901.15
@angular-devkit/build-angular 0.901.15
@angular-devkit/build-optimizer 0.901.15
@angular-devkit/build-webpack 0.901.15
@angular-devkit/core 9.1.15
@angular-devkit/schematics 9.1.15
@angular/cdk 9.2.4
@angular/cli 9.1.15
@ngtools/webpack 9.1.15
@schematics/angular 9.1.15
@schematics/update 0.901.15
rxjs 6.6.7
typescript 3.8.3
webpack 4.42.0
【问题讨论】:
-
可能是不同的硬件。您的本地环境是否有 SSD 驱动器,而不是安装 jenkins 的位置?
-
尝试删除本地机器中的 node_module 目录并构建它。将该时间与 Jenkins 构建时间进行比较。我之所以这么说,通常是在构建机器中从头开始构建,但在本地机器中,东西会被缓存,因此后续构建会更快。
-
是的,我的本地机器上有 SSD。
-
我删除了 node_modules,然后再次运行 prod 构建,它比 jenkins 构建快得多