我的应用程序需要在处理用户的请求之前构建几个大型哈希图。理想情况下,我想将这些哈希图存储在机器的内存中,这意味着它永远不需要进行任何昂贵的处理,并且可以快速处理任何传入的请求。
但这对于 Firebase 不起作用,因为用户有可能触发一个新实例,从而启动非常耗时的预处理步骤。
因此,我尝试设计我的应用程序以使用 firebase 数据库,并且每次仅从数据库获取所需的数据,而不是将所有数据保存在内存中。但是,由于云函数正在从数据库下载大量数据,仅我自己进行测试,这个月的下载量就已超过 1.7 GB。这超出了配额。
一定有什么东西是我遗漏的;我想要的只是一些哈希图的永久内存存储。我想要的只是让这些哈希图在通过请求调用函数时准备好。这似乎是一个简单的要求;怎么就没有办法做到这一点呢?
如果您想将数据存储在运行 Cloud Functions 的容器中,您可以使用它的本地 tmpfs,实际上保存在内存中。但是,当容器被回收时,这种情况就会消失,当您的函数有一段时间没有被访问时,就会发生这种情况。因此,只要容器启动,就必须重建本地文件系统。
如果您希望永久存储生成的值,请考虑使用 Google Cloud Storage。它可能是一种更具成本效益的选择,而且绝对是最具可扩展性的选择。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)