我已经升级了Angular 9,它在开发上工作得很好,但是如果我修改任何代码,ng serve liveload就会抛出内存之外的JavaScript堆。我已经将旧的空间大小增加到4096
export NODE_OPTIONS=--max_old_space_size=4096但仍然是同样的错误。我不确定,为什么ng服务运行良好,但随后的活负载抛出了一个错误。以下是例外情况
<-最后几个GCs >
37:0x45d83c0 10739196 ms:标记扫描1999.6 (2080.0) -> 1984.8 (2081.5) MB,1372.6 /0.1ms(平均µ= 0.164,当前µ= 0.074)分配失败清理可能不会成功37:0x45d83c0 10740508 ms:标记扫描2001.0 (2081.5) -> 1986.8 (2083.8) MB,1215.7 /0.1ms(平均µ= 0.124,当前µ= 0.073)分配失败清理可能不会成功
<- JS堆栈跟踪->
致命错误:无效标记-堆附近压缩限制分配失败-主机堆超出内存1: 0xa04200节点::Abort() ng JavaScript --poll=2000 --source-map=false --host 0.0.0.0 --port 4300 2: 0x94e4e9节点::FatalError( char const*,char const*) ng serve --poll=2000 --source-map=false --host 0.0.0.0 --port 4300 3: 0xb7860e主机char const*,bool) ng服务--轮询=2000--源-映射=假--主机0.0.0.0 --端口4300 4: 0xb78987 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*,字符常量*,bool) ng服务--轮询=2000--源映射=假--主机0.0.0.0 --端口4300 5: 0xd33215 ng服务--轮询=2000--源映射=假--主机0.0.0.0 --端口4300 6: 0xd33d9f ng服务--轮询=2000--源映射=假--主机0.0.0.0 --端口4300 7: 0xd41e2b v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace,v8::内部::GarbageCollectionReason,v8::GCCallbackFlags) ng服务--轮询=2000--源-映射=假--主机0.0.0.0 --端口4300 8: 0xd459ec v8::internal::Heap::AllocateRawWithRetryOrFailSlowPath(int,v8::内部::分配类型,v8::内部::分配起源,v8::内部::分配对齐) ng服务--轮询=2000--源-映射=假--主机0.0.0.0 --端口4300 9: 0xd140cb v8::内部:工厂::NewFillerObject(int,bool,V8::内部::分配类型,v8::internal::AllocationOrigin) ng服务--轮询=2000--源映射=假--主机0.0.0.0 --端口4300 10: 0x105a06f v8::internal::Runtime_AllocateInYoungGeneration(int,unsigned long*,v8::内部::隔离*) ng服务--轮询=2000--源映射=假--主机0.0.0.0 --端口4300 11: 0x1400039 ng服务--轮询=2000--源映射=假--主机0.0.0.0 --端口4300已中止
任何人都可以面对同样的问题吗?或者知道它的解决方案?
发布于 2020-12-29 13:27:54
将我的答案更新为最可能的解决方案项目大小可能会超过4096MB的vmemory,尝试将其更改为8192MB,它应该会起作用,我通常在使用ELK堆栈时会遇到这种情况。
https://stackoverflow.com/questions/65486785
复制相似问题