gpt4 book ai didi

php - 社交网站 IM/聊天系统的想法

转载 作者:太空宇宙 更新时间:2023-11-04 01:14:43 26 4
gpt4 key购买 nike

我正在创建一个社交网络网站,我需要一个 IM/聊天解决方案。

对话只是一对一的,用户只能与他们的 friend 聊天(即 Facebook 聊天 - 没有 channel ,没有房间......)。

该网站是用CodeIgniter(PHP)和MySQL数据库制作的。可能会放在VPS(Linux)上,所以我可以控制环境。此外,预计用户数量将超过 10 万。

所以,我需要一些关于如何进行聊天的想法。

到目前为止我的想法:

  • 每 X 秒进行一次 Ajax 轮询(对于这种大小的网站来说不是一个好的解决方案)
  • 实现Jabber/XMPP系统(我没有这方面的信息,也不可能)
  • 使用第 3 方服务(例如 Pusher.com)
  • Node.jssocket.io 中创建聊天,并使其独立于网站的其他部分

经过一些研究并阅读了一些关于 SO 的答案

https://stackoverflow.com/a/11362929/928540

https://stackoverflow.com/a/5654487/928540

我真的很喜欢 Node.jssocket.io 的想法,所以我想听听一些关于它的意见,也许还有一些指导、链接、帮助、教程......

最佳答案

Also, it is expected to have more than 100 000 users

我认为问题还在于有多少活跃用户/连接。

Ajax poll on every X seconds (not good solution for website this size).

确实如此。这是一个坏主意。

Implementing Jabber/XMPP system (I have no info about this, nor is it possible)

类似于 EjabberdBOSH很受欢迎。我使用了 prosody,因为它非常容易安装,并且 strophe.js作为 BOSH 客户端(浏览器中的 JavaScript)。

Using 3rd party service (like Pusher.com)

最容易实现(没有扩展问题),但可能会变得昂贵。 5000 个同时连接将花费您每月 199 美元(太贵),我认为您可能需要吗?然后你又拥有大约 5000 个活跃连接,因此它是有利可图的(?)。

creating the chat in Node.js and socket.io, and having it independent from the other part of the website

非常流行的解决方案,但现在我相信一些用户遇到内存泄漏(但这可能已经解决)。这可能只是 websockets transport 的问题。另外,它可能并不是真正的泄漏,而只是 high memory usage because of lazy GC 。我建议在完全投入之前先进行分析。

关于php - 社交网站 IM/聊天系统的想法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11680567/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com