0

我一直在研究套接字,通常在 PHP 中工作了一段时间。目前我有一个用于连接聊天服务器的 PHP 客户端,并输出从它所连接的服务器发送的每个数据。

为了更广泛地解释这一点,我使用 PHP 中的 flush() 函数来写出每个在循环中等待的缓冲区。缓冲区读取器正在使用一段时间,条件是连接套接字的状态。但这并不重要。

现在到我想要完成的事情。我想通过 AJAX/jQuery 保持对服务器端的套接字处理和从服务器输出到客户端的数据。到目前为止,我的研究总是返回给我 HTML5 WebSocket 和 node.js,但是,我“必须”对此非常挑剔,至于这个用户,我最小的依赖可能是:

  • WinXP IE6 用户(已经禁用 jQuery,甚至)
  • 未安装 JAVA/Flash 的用户

所以我必须考虑这方面的可能性,这就是为什么我不能使用 Flash/Java 后端或 WebSocket 之类的新技术,也不想在客户端处理服务器的东西。我真的很讨厌被困在旧技术中,但这是必须的。

当我四处寻找时,我发现这个与我的需求相似。

PHP 套接字是制作基于 PHP jQuery 的聊天的可行选项吗?

为了快速查看答案,他们都指向一个方向,PHP 多进程和内存消耗。我知道这是一个减号,但这是我目前能做的最好的。但是,在一定的延迟内,非活动连接会超时断开连接,如果需要,延迟会延长。所以我对这个不太感兴趣。

其次,最后一个答案指向“Ajax 聊天应用程序教程”,我进行了全面审查,但是哇,将每一行写入一个 html 文件并每次都重新包含它,这是我可以在不使用额外文件的情况下做到的,但是,真的有必要吗?再加上从服务器端重新读取文件,每次都将整个读取的文件重新导入到文档中,这对“双方”来说不是更糟吗?

不管怎样,我有一段时间无法得出结论,它发生了,我又来了。(:P) 等待您的回答/建议/想法,谢谢。

问候。

4

1 回答 1

1

有专门处理此类问题的服务器软件可用。称为推送服务器/服务。例如 APE(http://www.ape-project.org/);根据他们的网站,它与所有网络浏览器兼容,他们甚至在那里进行了演示聊天。我建议你去那个解决方案。

于 2012-12-19T00:39:48.787 回答