聊天系统数据库设计-一对一和分组-Laravel,Redis,socket.io,节点

时间:2019-03-27 06:01:37

标签: php laravel redis socket.io chat

我想知道如何建立数据库结构 聊天系统-一对一和分组。 我正在使用MySQL。

我正在使用 Laravel,redis,socket.io

我只是创建简单的聊天来了解堆栈

我的工作方式

客户端1消息-> Laravel保存在db中并推送redis-> 节点redis客户端侦听-> socket.io发送到->客户端2

群聊而不是实时聊天如何工作?

1 个答案:

答案 0 :(得分:0)

您可以使用最少的列来构建类似的东西

chat (一对一)

id | message | message_type | sender | reciever | reply_to (optional) | created_at | updated_at | deleted_at (optional)

chat_messages (组)

id | group_id | message | message_type | sender | reply_to (optional) | created_at | updated_at | deleted_at (optional)

如果要实现,必须定义groups(group_id-关系)

您可能更喜欢上面的示例,仅提供基本功能。您可以根据自己的逻辑进行更新