Mysql 聊天长/短条目:混合字符串和文本?

Mysql 聊天长/短条目:混合字符串和文本?,mysql,ruby-on-rails,database,ruby-on-rails-4,Mysql,Ruby On Rails,Database,Ruby On Rails 4,我正在寻找一个“最佳实践”来实现facebook在其聊天系统中所做的事情。您可以“正常”聊天或切换到消息页面来编写消息,这似乎会导致相同的数据源,因为没有真正的差异(ui中除外);您可以在聊天室和消息页面上看到所有消息 我想知道的是如何在后端管理一个系统,它被用作普通聊天(->短消息,我在这里使用string/varchar)和整个消息系统(->长消息,我在这里使用文本) 有什么最佳实践或想法可以将“消息类型”和节省资源结合起来,例如,将长条目保存在不同于短条目的表中,或者我不应该关心这一点吗?

我正在寻找一个“最佳实践”来实现facebook在其聊天系统中所做的事情。您可以“正常”聊天或切换到消息页面来编写消息,这似乎会导致相同的数据源,因为没有真正的差异(ui中除外);您可以在聊天室和消息页面上看到所有消息

我想知道的是如何在后端管理一个系统,它被用作普通聊天(->短消息,我在这里使用string/varchar)和整个消息系统(->长消息,我在这里使用文本)


有什么最佳实践或想法可以将“消息类型”和节省资源结合起来,例如,将长条目保存在不同于短条目的表中,或者我不应该关心这一点吗?

为什么不将其全部保存为长文本,即使它们“有点空”?(少于10个单词)这不是花费了大量的资源吗,因为它们都保存为BLOB消息?“这似乎导致了相同的数据源,因为没有真正的差异(在ui中除外)”这只是单个模型(数据源)上的两个不同视图(ui表单)。这通常被称为模型-视图-控制器(MVC)。当模型通过观察者模式更改时,视图会更新。“例如,通过将长条目保存在不同于短条目的表中”如果我理解正确,则它们都是消息。你不想去不同的地方获取信息。如果您整理不同类型的邮件,如何确保它们的顺序正确?所以我很确定任何在模型中分割这些数据的尝试都会使解决方案过于复杂。