我一直在研究套接字,通常在 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) 等待您的回答/建议/想法,谢谢。
问候。