Google Cloud Function 访问外部数据库

Pan*_*kaj 5 google-cloud-functions

我想从Google Cloud FunctionFirebase Cloud Function访问外部数据库 (mongodb) 。我不想每次都创建数据库连接。是否有一个选项可以将数据库连接存储在全局变量中并在每次调用中使用它。

小智 4

您实际上可以在云函数中执行此操作,但您将无法控制何时重新创建数据库连接以及何时重用。如果您在全局范围内、正在执行的函数之外创建连接对象,则只有在发生冷启动时才会执行该代码段。但您将无法知道冷启动何时发生,因此重用同一连接并不在您的绝对控制之下。检查有关Cloud Function 范围的文档。

此外,还有其他方法可以做您想做的事情并使其处于您的控制之下。例如,您可以让 Google App Engine 应用程序托管您的数据库连接,然后让 Google Cloud Function 将请求发送到 GAE 应用程序。

这样,您的 GCF 将不会处理连接的打开和关闭。服务会执行此操作,并且只要服务保持运行,连接就会保持打开状态。