【问题标题】:How can I store chat conversation in asp.net?如何将聊天对话存储在 asp.net 中?
【发布时间】:2018-01-29 10:53:59
【问题描述】:

我正在建立一个聊天网站。如果我将聊天消息存储在 SQL Server 数据库中,那么“聊天”表就有数百万行,因为一行只能存储一条消息。这是否导致性能不足?我还想跟踪用户 ID 以检索消息。可能我必须为每个用户创建一个表来存储他/她的聊天消息吗?当一个用户与多个用户聊天时,它与多线程有关吗? Facebook 存储每个用户消息的策略是什么?

【问题讨论】:

  • 您应该只有 1 个用户主控和 1 个包含 User1_Id、User2_Id、ChatLine 的聊天事务表。如果您的表变得很大并开始出现问题,您可以考虑清除数据。

标签: c# asp.net sql-server relational-database chat


【解决方案1】:

如果我将聊天消息存储在 SQL Server 数据库中,那么有 数百万行的“聊天”表,因为只有一条消息可以 存储在一行中。这是否导致性能不足?

如果您的表已正确编入索引,则应该没有任何问题。 SQL Server 能够处理数百万条记录。

我还想跟踪用户 ID 以检索消息。可能 是我必须为每个用户创建一个表来存储他/她的聊天记录 消息?

您不需要为每个用户设置单独的表。您可以有一个用户表和一个消息表以及其他几个支持表。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-14
    • 2015-07-26
    • 2019-03-02
    • 2013-08-25
    • 2023-03-03
    • 1970-01-01
    • 2018-09-30
    相关资源
    最近更新 更多