是否有任何可能的方法仅将firebase数据库用于实时消息传递并将数据存储在自己的服务器上

我正在尝试使用android,firebase,php和MySQL构建一个聊天应用程序但是我买不起 firebase数据库上的所有消息。 因此,我喜欢将它用于实时聊天,而两个用户互相交互,然后删除firebase上的所有聊天记录并将其存储在我自己的数据库中,这样我就可以显示之前会话中的消息到 用户。</ p>

所以问题是我怎样才能向用户显示以前的消息。 以下是我可以弄清楚的逻辑</ p>

1)当两个用户开始相互交互并显示所有新旧会话时,我会将所有旧消息上传到firebase数据库 recyclerview android。</ p>

但是,当我们需要将大量数据上传到firebase时,成千上万的用户开始互相交互时,这可能会成为麻烦。</ p> \ n

2)从我自己的服务器获取所有旧对话并在firebase数据库上创建新节点,然后在回收站视图中再次显示所有这些对话。</ p>

但它会 从两个不同的数据源在单个Recyclerview中显示旧消息和新消息是非常痛苦的,并且不能进行实时同步。</ p>

我有什么办法可以做,我会 如果你们开始讨论这个话题,我们将不胜感激。 </ p>

P.S:我将在以后负担得起使用firebase付费服务。</ p>
</ div>

展开原文

原文

I am trying to build a chat app using android, firebase, php and MySQL but I can't afford to store all the messages on firebase database yet. So, I like to use it just for real time chatting while two users are interacting each other and then delete all the chat log on the firebase and store it on my own database, so that I can show the messages from the previous conversations to the users.

So the problem is that how will I be able to show the previous messages to the user. Here are the logic I can figure out

1) I will upload all the old messages to the firebase database when two users start to interact each other and show all the old and new conversation in the recyclerview android.

But this could become trouble when thousands of users start to interact each other at the same time as we need to upload bulk amount of data to the firebase.

2) Get all the old conversations from my own server and create new node on firebase database then show all of them together again in a recycler view.

But it will be very painful to show the old and new messages in a single recyclerview from two different data sources and can't do realtime sync.

Is there any possible way I could have done and I would be much appreciated if you guys started discussing about this topic.

P.S : I will use firebase pay service later when I can afford.

dongwei2882
dongwei2882 如果您考虑在某个时候尝试使用CloudFirestore,可以在此处找到有关如何创建完整且功能齐全的FirestoreChat应用程序的教程。
一年多之前 回复
drkwpgrdb092239314
drkwpgrdb092239314 是的,我刚刚意识到首先从firebase数据库入手是最好的。
一年多之前 回复
douganggu4392
douganggu4392 另一个完全不可想象的选择是直接连接用户,而不接收,发送和存储来自中央数据库的任何消息。每个用户都可以在本地拥有自己的小数据库。然后,中央服务器仅用于查找其他用户。
一年多之前 回复
dql1978dql1978
dql1978dql1978 即使在您制作聊天应用程序之前,您是否已准备好应对这种额外的复杂功能?处理firebase,MySQL和客户之间的所有同步问题将是一场噩梦。我建议选择一个数据库开始,使用抽象的数据库层,并尝试首先构建一个工作的聊天应用程序。如果人们真的想要使用它,并且它变得流行,那么现在是考虑扩展问题的时候了。请记住,聊天应用程序不需要超低的响应时间。大多数时候人们都在阅读,思考和打字。
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐