繁体   English   中英

Firebase函数中如何存储一个sql的数据库连接池?

[英]How to store a sql database connection pool in Firebase functions?

在第一次调用 Firebase function 时,我创建了一个 mysql 连接池(这是昂贵的)并将其存储在全局 scope 中。只要有一个实例服务于请求,它就可以正常工作。 假设在负载下可以存在多个函数实例,那么防止创建大量此类池的好做法是什么?

Cloud Functions 文档中有一个特定的部分:“ 使用全局变量在未来的调用中重用对象”。

无法保证云 Function 的 state 会被保留以供将来调用。 然而,Cloud Functions 经常回收之前调用的执行环境 如果在全局 scope 中声明一个变量,它的值可以在后续调用中重复使用,而无需重新计算。

通过这种方式,您可以缓存在每次 function 调用时重新创建可能代价高昂的对象。

每个区域的云函数最多可扩展 1,000 个实例。

SQL 个连接可扩展到 32,000+。

实际上,您不会遇到数据库连接的上限。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM