GCP功能Node.js巨大的延迟

时间:2020-07-07 20:17:51

标签: google-cloud-platform google-cloud-functions serverless

我们正在运行简单的GCP函数(纯,无Firebase或未添加任何其他层),这些函数仅使用Node.js引擎(以前的版本8,现在为10)处理HTTP请求,并返回一些“简单的JSON响应”。我们看到的是,有时(但并非很少),当请求“被GCP接受”并且到达我们的功能代码之前,会有巨大的延迟。如果我说的很大,我说的不是毫秒,而是秒!这不是冷启动(我们在全局范围内有单独的日志消息,因此我们知道何时发生冷启动)。目前,函数的大小为256或512 mb,并且在封闭区域中运行。

我们在GCP功能的第一行登录,例如:

First latency example

Second latency example

有人也经历过吗?正常情况下,这种延迟有时可能需要长达5秒钟(甚至很少甚至更长的时间)吗? 顺便说一句,有时在输出端也会发生同样的事情。因此,如果不走运,可能需要10秒钟的时间。预先感谢您的答复,无论您是否有类似经验。

1 个答案:

答案 0 :(得分:2)

我看到的所有此类问题都与冷启动有关,或者无法证明它们与代码启动无关。

这个问题甚至可能对stackoverflow产生广泛影响。如果没有示例,至少没有函数和执行次数,我们将没有机会重现它,但是我会尽力回答。

似乎延迟分析主要在日志上进行。我认为您应该尝试使用GCP中可用的“跟踪”功能(direct linkdocumentation)。这应该为您提供数据,以便能够跟踪问题。

示例我已经在helloworld云功能上使用了它,并从Bush脚本中卷曲了它。似乎在数百次调用中,一次执行的延迟比平时大10倍。

我希望它会有所帮助:)!

相关问题