首页 > 解决方案 > Typescript 和 Googleapis 使用的内存激增

问题描述

我们已经跟踪了一段时间似乎在构建步骤中不时发生的内存不足错误。
我们终于确定了提交。所述提交导致tsc --alwaysStrict构建从 175MB (RAM) 到完成构建到 656MB。

该提交仅将googleapis库添加到package.json并像这样使用它import { google } from "googleapis";。仅这两个变化就造成了这个峰值。

我们看到的另一件事是,在构建中包含库package.json会使构建增加 100MB,但是,一旦我们添加它,import它就会一直增加到 600MB。
重要的是,我们只对 gSheets 感兴趣。

我看到了一些未来的选择,但我不喜欢其中任何一个:

  1. 增加服务器的 RAM(目前为 1GB)
  2. 为此目的使用自定义或非官方库

还有其他方法可以解决这个问题吗?

标签: node.jstypescriptgoogle-sheets-api

解决方案


我遇到了同样的问题,但对我来说,在运行 jest 单元测试时问题浮出水面,即使是最简单的测试也会消耗高达 1GB 的内存并导致我们的 CI 机器崩溃。

似乎取得了一些进展,您现在可以从 @googleapis 导入特定模块

看看:https ://github.com/googleapis/google-api-nodejs-client/issues/2187

例如: https ://www.npmjs.com/package/@googleapis/drive https://www.npmjs.com/package/@googleapis/calendar

还没试过,但我希望它能解决问题。

编辑:尝试使用我上面提到的特定于服务的包,它就像一个魅力。试试看


推荐阅读