如何获取Firebase实时DataBSE并发用户数和选项以降低连接限制?



我正在使用firebase realtime database开发一个Android应用程序。我想要2个解决方案。

1)现在我无法获得任何用户活动数量的数据(并发用户)。

2)如果有任何降低连接限制的选项。像现在一样

我花了更多的时间,但没有结果。

我希望你能给我一个解决方案。

谢谢...

如果您想知道连接了多少用户,则需要detect the connection state。Firebase实时数据库提供了一个特殊位置:

/.info/connected

每当Firebase实时数据库客户端的连接状态更改时,会更新。这是官方文档中的一个示例。

DatabaseReference connectedRef = FirebaseDatabase.getInstance().getReference(".info/connected");
connectedRef.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot snapshot) {
        boolean connected = snapshot.getValue(Boolean.class);
        if (connected) {
            System.out.println("connected");
        } else {
            System.out.println("not connected");
        }
    }
    @Override
    public void onCancelled(DatabaseError error) {
        System.err.println("Listener was cancelled");
    }
});

/。info/connected是一个布尔值,在实时数据库客户端之间未同步,因为该值取决于客户端的状态。换句话说,如果一个客户端读取/.info/connection为false,则不能保证单独的客户也会读取false。

这也是我推荐的一篇文章,您可以阅读以更好地理解。

关于第二个问题,如果您将达到每秒写入的最大写入数量,这并不意味着您将无法再使用Firebase数据库。当第1001次同时连接发生时,创建了一个操作队列,而firebase将等到一个连接关闭,并且使用您的新连接。

最新更新