【问题标题】:Online chat with database - Fastest way?与数据库在线聊天 - 最快的方式?
【发布时间】:2012-08-22 21:02:30
【问题描述】:

您好,我将创建一个基于网络的聊天程序。 所有聊天都是私密的,没有群组框。

我需要记录所有聊天记录。 我的想法是将所有消息推送到 mysql 数据库,然后每半秒检查一次该数据库是否有传入消息。

这是创建网络应用程序的最佳方式吗?该站点应支持 2000 个用户同时聊天。

可能有更好的选择吗?我见过人们谈论多个数据库、文本文件、TCP/IP (IRC) 和 SQL 的组合等。

【问题讨论】:

标签: mysql chat


【解决方案1】:

MySQL 能够同时处理大量并发请求,但如何管理和维护数据库是重点。

完美维护和索引的表应该没有问题。保持表的结构尽可能简单。类似的东西

+----------------+--------------+-----------------
|    from        |     to       |   message      |
+----------------+--------------+-----------------

而且,没有完美的方法来创建聊天程序。取决于许多其他因素,例如

  • 请求类型: AJAX 或 Comet 或 WebSocket
  • 应用程序编码:没有垃圾编码,遵循多个设计模式之一的清洁 OO 代码
  • 缓存:尽可能缓存大部分静态信息。
  • 数据归档或事务处理
  • 查询你会和消息一起获取什么(可能是那些之前可以缓存的东西。这些东西包括namesavatar 等)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-06
    • 1970-01-01
    • 1970-01-01
    • 2021-02-07
    • 2015-03-06
    • 2011-10-27
    • 1970-01-01
    相关资源
    最近更新 更多