存储和检索Google Cloud Functions API的数据的位置?

时间:2017-04-27 12:57:50

标签: database rest google-cloud-functions serverless-framework

我正在使用Google Cloud Functions API,我很困惑如何以正确的方式使用它来使用简单的REST API从数据库中检索某些数据并使用所需的数据响应客户端。

我正在使用无服务器来部署我的代码,这个代码对于一个函数来说就是这样。

 c:\mingw\lib\gcc\mingw32\5.3.0\include\c++\thread \
 c:\mingw\lib\gcc\mingw32\5.3.0\include\c++\mutex \

但这只是一个简单的exports.http = (request, response) => { response.status(200).send('Hello World!'); }; 响应,没有来自数据库的数据。

来自像Rails或Django这样的MVC框架我会编写一个控制器动作来从我的数据库中检索一些数据,并为响应呈现一个JSON,但Google Cloud Functions通过只有函数而不是其他任何工作。

我应该在哪里存储我的数据库(使用Google云服务)以及如何在函数中检索数据?我是否必须调用某种数据库API并处理结果并将其作为JSON发送回函数中?

1 个答案:

答案 0 :(得分:2)

借助Google云功能,您通常会使用托管数据库(例如Firebase实时数据库)作为持久存储。在这种情况下,您可以将GCF用作Firebase数据库的API网关。

您还可以启动自己的VM来运行您喜欢的数据库。然后,这将在上一个示例中扮演Firebase数据库的角色,您仍然使用GCF作为API网关。

在这两种方法中,您有两种微服务:数据库本身就是一种服务,而GCF函数是一种包装数据库的服务。

最后一个选项是将数据库部署到运行函数的GCF容器中。然后,您可以从函数代码连接到此数据库,而无需连接到外部服务。有关将自定义二进制文件部署到GCF容器的其他信息,请参阅this answer