数据库设计网络聊天的最佳实践

时间:2017-10-18 15:23:01

标签: mysql database database-design chat

我正在设计一个使用Pusher来处理异步调用的网络聊天。它是我设计的游戏/工具。可以有任意数量的games,每个游戏都有channels(对于Pusher)。每个频道在闲置6小时后会打开一个新的session

消息需要由会话存储才能稍后访问。那么数据库的最佳设计是什么?我应该单独存储消息,还是像mysql文本字段中的json一样存储?

目前有一个用于游戏,游戏会话,频道,聊天会话(与游戏会话1:1链接)的表格,以及一个用于消息的表格(在文本字段中以json格式显示消息)。但我不确定这是否是在单个会话中存储将会收集100-2000条消息的最佳方式,因此将每条消息存储在自己的行中听起来不切实际。

编辑:就我计划用它做什么而言。我只需要将它们存档,以便用户稍后可以通过会话再次查看它们。

那么这是否意味着最好的方法是将每条消息存储在具有唯一ID的行中,并在加载会话时过滤掉所有这些消息?

0 个答案:

没有答案
相关问题