【问题标题】:Why does my google cloud funciton take more than 9 minutes for execution while the same funciton on my local machine takes < 2 mins为什么我的谷歌云功能需要超过 9 分钟才能执行,而我本地机器上的相同功能需要 < 2 分钟
【发布时间】:2021-08-26 23:27:43
【问题描述】:

为什么我的谷歌云功能需要超过 9 分钟才能执行,而我本地计算机上的相同功能需要

【问题讨论】:

  • 没有代码/环境信息就无法回答这个问题。我的直觉是,您实际上正在遭受冷启动成本的困扰。我强烈建议您观看此视频以获取有关它的详细信息:youtube.com/watch?v=IOXrwFqR6kY
  • 如果你在第一次运行后立即第二次运行相同的函数,它仍然是 9 分钟,还是执行得更快?
  • 您使用的是哪种函数类型?对于所有函数类型,如果您在要完成的工作主体完成之前返回结果,您会发现您的函数将受到严重限制,甚至可能无法完成。

标签: google-bigquery google-cloud-functions


【解决方案1】:

看看Compute Time in the pricing section。默认情况下,Cloud Functions 有 256Mb 的内存,因此只有 400Mhz 的计算能力。要利用完整的 CPU (2.4Ghz),请使用 2Gb 内存部署您的函数。

小心,它在 1 个核心上“仅”为 2.4Ghz。您的工作站很有可能拥有 4 个、8 个或更多内核,速度为 3 或 3.5Ghz。比较难!!

【讨论】:

  • 感谢您的回复,我在本地使用四核处理器。然而,令我困惑的是使用 client.query(query).result().to_dataframe() 在云函数中执行查询在云函数中大约需要 8 分钟,但在我的本地机器中只需要
  • 是的,它是 python 库(在计算方面效率不高),您必须将查询结果加载到数据框中。它是纯粹的计算和数据转换。听起来合乎逻辑。使用 2Gb 函数,然后重试。
  • 感谢您的及时回复,我现在使用的是 4 Gb 功能,似乎必须得到相同的结果。如果它是一种内在品质,那么没关系,我担心我的方法是否效率低下
  • 你有同样的9分钟+ 4Gb的功能?奇怪...
  • 使用 4 Gb 功能只需不到 9 分钟
猜你喜欢
  • 2021-06-10
  • 1970-01-01
  • 2016-02-13
  • 1970-01-01
  • 2019-06-10
  • 1970-01-01
  • 1970-01-01
  • 2020-12-28
  • 2018-02-13
相关资源
最近更新 更多