http api on google cloud 使用 App Engine 或 cloud function

http api on google cloud using app engine or cloud function

我想使用 python 构建一个 api 并将其托管在 google 云上。 api 基本上会读取存储桶中的一些数据,然后对其进行一些处理,然后 return 返回数据。我希望我可以读取内存中的数据,当请求到来时,只需处理它并发回响应以低延迟为其提供服务。假设我将从一些 database/storage 中读取几千条记录,当请求到来时处理并根据请求参数发回 10 条记录。我不想在请求到来时进行 connection/read 存储,因为这需要时间,我想尽快提供服务。

google 云功能可以满足这个需求吗?或者我应该使用应用引擎。 (基本上我希望能够一次读取数据并将其保存以供传入请求使用)。数据大部分将小于 1-2 gb(最大)

谢谢, 马尼什

您的函数代码必须包含静态数据。增加 Cloud Functions 内存以允许它在内存中加载数据以保持数据温暖并快速访问它。

那么,你有两种方法可以实现:

  • 启动时加载数据。您只加载它们一次,第一次调用具有很高的下载延迟(例如从 GCS)并将数据加载到内存中。优点是:在数据更新的情况下,你不必重新部署你的功能,只更新他们所在位置的数据。在下一次函数启动时,将加载新数据
  • 在部署中使用静态数据部署函数。这次启动时间快多了(没有下载),只加载内存中的数据。但是当你想更新数据时,你必须重新部署你的功能。

最后一句话如果你有2组静态数据,你必须有2个函数。职责不同,部署不同