【问题标题】:Host function on firestore for an android app?android应用程序的firestore上的主机功能?
【发布时间】:2021-10-18 21:39:33
【问题描述】:

我正在尝试开发一个将使用 Firestore 数据库的 android 应用程序。用户可以点击一个按钮来收集所有用户的数据。我注意到这需要一段时间(应用程序检查数据库,然后为每个文档用户读取他们的值,根据他们创建帐户后的时间进行计算,然后将所有这些添加到一个数字中)。

我想知道是否会有更优化的方法来做到这一点?就像这可能有,像一个函数,或者我不知道如何调用它,在每分钟或每小时执行这个计算的firestore服务器上,然后应用程序只查询数据库上的 int 中的结果存储?

我是这个领域的新手,所以我可能没有使用正确的术语。

谢谢

【问题讨论】:

    标签: android firebase google-cloud-firestore


    【解决方案1】:

    在使用 Firestore 等 NoSQL 数据库时,通过读取每个客户端上的大量数据来执行计算通常是一种反模式。如果您有从数据库中的数据到您在应用屏幕中显示的内容的相当直接的映射,则它们是最好的。

    Firestore 本身没有内置的服务器端计算。您通常希望在 Cloud Functions 之类的东西中执行这些操作,它可以响应写入 Firestore(以及其他 Firebase 和 Google Cloud 产品)或 run periodically on a schedule 来运行。

    【讨论】:

    • 您好弗兰克,感谢您的回答!所以我不知道这对我来说是好消息还是坏消息^^”因为我感觉不对劲而且我在做的事情很慢,所以云功能似乎是一个很好的解决方案。然后我尝试搜索教程(我是几乎从 android studio/firebase 开始),只发现使用虚拟工作室的难以理解的视频,几乎没有解释:/ 如果你对我感兴趣的主题有很好的资源。然后我注意到一个主要缺点:我去 firebase 控制台看到了关于云功能,结果你必须付费才能尝试:/所以我什至不能免费测试..
    • 为了更准确地说明我的定价问题,因为我希望为所有客户提供每分钟运行一次的功能,如果我了解他们的定价,我想这还不够?但是,它表明在新的“火焰计划”中,每个身份验证都必须付费,这意味着我在学习如何编码时必须付费,因为我的应用程序正在使用身份验证并且我正在通过迭代学习? ://
    • 关于定价:Cloud Functions 有免费套餐,但您需要付费才能使用它们。大多数提供商的身份验证是免费的,只收取电话身份验证费用 - 甚至还有免费套餐。 关于教程:在 Stack Overflow 上推荐场外资源是题外话,但我通常从 Firebase 自己的文档、代码实验室和教程中学习,或者从 fireship.io 之类的人那里学习。
    • 非常感谢!我已经接受了你的回答我认为这个话题很接近?只是一个简单的问题,如果我使用 blaze 计划并且云功能不适合我的需要,我可以回到免费计划吗?再次感谢
    • 您可以随时更改您的项目计划。另请参阅:firebase.google.com/support/faq#pricing-modify-plan(我建议经常查看该页面,因为它涵盖了最常见的问题)
    猜你喜欢
    • 2016-04-30
    • 1970-01-01
    • 1970-01-01
    • 2018-06-01
    • 1970-01-01
    • 2016-06-30
    • 1970-01-01
    • 1970-01-01
    • 2015-04-24
    相关资源
    最近更新 更多