为什么我的Firebase功能部署(来自荷兰)失败了?

时间:2017-03-31 12:10:09

标签: firebase google-cloud-functions

更新:问题已经过了一段时间,但自昨天以来一直以复仇的方式返回。现在部署真的需要永远,并且总是会因Server Error. connect ETIMEDOUTUpload Error: Cannot read property 'response' of undefined或其他原因而失败。

在尝试使用HideMyAss通过美国位置进行连接后,我发现这完全解决了我的问题!请注意,此问题不仅发生在我们在阿姆斯特丹办事处部署,而且还来自我们在鹿特丹的办事处。与此同时,我也听到更多人遇到其他Google服务的问题。

我已向相关的Firebase支持电子邮件回复了此信息,希望他们能够对此进行调查。与此同时,我想我将不得不继续使用HideMyAss ..

-

在添加更多功能之后,部署功能的时间越来越长。有时一开始,但最近有一段时间我每次尝试$ firebase deploy --only functions随机部署的一个函数都失败了:

  

⚠函数[foo]:部署错误:失败   执行环境

当我再试一次大约一小时后,它会毫无问题地部署(部署仍需要2分钟,这似乎有点慢)。

也许部署过程超时;经过很长一段时间,它总是失败,永远不会很快。

也许我在美国以外的地方会导致部署过程中与延迟相关的问题?虽然看起来不太可能......

我也在查看Firebase功能日志记录"功能执行需要60002毫秒,完成状态:'超时'"和其他性能问题,所以我想知道这些是否都是相关的。

PS:我也向https://firebase.google.com/support/报告了这个问题,但是我在那里做的最后一份报告在15天之后仍然没有回复,所以我也要继续在这里发布。我在这个报告中包含了一个firebase-debug.log,但不是在这里公开分享(不确定那里是否有任何令牌等)。

1 个答案:

答案 0 :(得分:3)

还有问题

我今天遇到过类似的问题,我正在从美国部署。

例如,函数将失败,显示以下两个错误:

  

部署错误:执行环境失败
  错误:函数未正确部署。

我发现,一旦发生这种情况,那是因为我的互联网连接正在下降,然后在firebase deploy期间完全丢弃。

然后再次发生这种情况是因为我试图在同一时间进行部署,因为我的很多云功能都开始在他们的服务器上开始做事。

一旦云功能失败,那么即使我的互联网恢复并且我的功能没有忙碌运行,它也不会让我重新部署以使卡住的功能再次运行。无论它的破坏副本是用什么标签粘贴在他们的服务器中:

  

执行环境失败


我的解决方案

我发现一旦你遇到这样的问题,你实际上可以重命名这个功能。在下一次部署时,它将有效地删除旧的已损坏函数,并将其重新加载为具有新名称的工作副本。

我认为如果您的项目要求它具有相同的名称,您可以再次执行此过程,删除具有新名称的副本并使用您需要的名称恢复副本。甚至阻止注释掉在第一次部署时删除它的功能,然后在另一个部署上取消注释以重新安装它。


如何帮助您

我希望如果您仍然遇到来自荷兰的问题,了解它可能是一个缓慢的连接问题或繁忙的服务器问题会很有帮助。因为我发现这两件事在美国境内给我带来了问题。

此外,如果问题出在其服务器上,则我删除和重新部署该功能的解决方案可能有助于加快部署速度。知道这是否有帮助会很有趣,因为即使该功能在服务器上看起来不错,也许它在上一次部署期间遇到了问题,这些问题阻碍了未来的部署。

很抱歉对此有迟到的回复,希望你不再遇到firebase的这些问题(我讨厌firebase btw,总是这样的问题)。