当我使用无服务器offiline命令部署或ru服务时,我面临着“JavaScript堆内存溢出”的问题。
我正在使用nestjs——一个节点框架——并为Node10x构建项目。在我的终端上,我在下面看到了这个。
我找到了一些修复方法,比如
有线索吗?
PS D:\m1_workspace\dw-api> serverless offline
Serverless: Compiling with Typescript...
Serverless: Using local tsconfig.json
<--- Last few GCs --->
al[21864:000001EF81231660] 20688 ms: Mark-sweep 1394.2 (1429.4) -> 1392.3 (1429.9) MB, 977.1 / 0.0 ms (+ 0.0 ms in 62 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 987 ms) (average mu = 0.074, current mu = 0.010) all[21864:000001EF81231660] 21557 ms: Mark-sweep 1392.3 (1429.9) -> 1392.2 (1427.9) MB, 868.1 / 0.0 ms (+ 0.0 ms in 0 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 868 ms) (average mu = 0.037, current mu = 0.001) allo
<--- JS stacktrace --->
==== JS stack trace =========================================
Security context: 0x002e2c61e6e9 <JSObject>
0: builtin exit frame: splice(this=0x03a8c4a97e89 <JSArray[8]>,0x0237e40868f9 <TypeObject map = 000001453BA516C9>,0,8,0x03a8c4a97e89 <JSArray[8]>)
1: getUnionType(aka getUnionType) [00000057B5C33821] [D:\m1_workspace\dw-api\node_modules\@hewmen\serverless-plugin-typescript\node_modules\typescript\lib\typescript.js:~34245] [pc=000003F28C0363E9](this=0x007f886026f1 <undefined>,types=0x010...
FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
快速解决方法是首先尝试运行以下命令:
export NODE_OPTIONS=--max_old_space_size=8192
我有一个大型无服务器项目,当我试图用“sls deply”部署时,它遇到了类似的问题。这个变通方法对我有用。
希望能有所帮助。
这也发生在我身上-
我意识到我已经定义了无服务器配置来单独打包每个lambda
如下所示:
package:
individually: true
将其更改为:
package:
individually: false
为我工作。
(当然,如果单独打包lambda函数对您至关重要,那么您将失去这一点,但对我来说并非如此)。