我们有一个在Heroku上运行的应用程序,并使用Firebase进行数据处理.在某些情况下,我们必须执行一些需要多个嵌套Firebase调用的逻辑(如果方法1成功,则使用方法2创建对象),依此类推.不幸的是,它们似乎比客户端的交易方法可以容纳的更深入一些.
我们依靠REST api来在服务器端执行这些功能,但是在压力测试时遇到的问题是它们经常超时(特别是在发出PATCH请求时).
但是,如果我们在具有相同代码和Firebase数据库的不同服务器上运行相同的测试,则它们不会成功.
来自同一环境的多个请求是否有任何限制?
我正在使用Firebase应用程序,该应用程序将包含一组代码,这些代码仅供一次性使用,然后将永久绑定到用户.
我希望获得这些代码的最佳查询和更新功能,并遵循Firebase本身的一些建议以及之前的问题,我提出了以下结构:
Codes
- Available
- 12345
- property 1
- property 2
- 32124
- property 1
- property 2
- Taken
- 23456
- property 1
- property 2
Users
- UID
- Codes
- 23456
Run Code Online (Sandbox Code Playgroud)
这使得查询可用代码变得容易,以及将绑定到用户的代码与其中一个代码匹配(用于登录后进行验证).
我遇到的问题是,为了将代码对象从"可用"移动到"已获取",我必须将其从前者中删除并将其插入到后者中.这是正确的方法吗?我对物理删除数据以移动它感到紧张.
关于如何正确构建此用例的任何建议?