jro*_*web 3 javascript php ajax jquery json
我需要帮助进行在线聊天。我已经创建了一个简单的在线聊天,一个用户可以与另一个用户进行交流,他们的对话保存为json 文件。json 文件是我每 2 秒使用setInterval()重新加载的文件。用户发送的消息通过使用ajax和通过 php 函数fopen 和 fwrite (append)发布附加到 json 文件中。
我的问题是我的 ajax 上的发送/发布过程太慢了。用户在聊天屏幕(div)上看到他/她的消息发送之前需要时间。我尝试在屏幕上附加消息以使其看起来好像已经发送但问题是当 setInterval 重新加载聊天屏幕并且新附加的消息尚未保存在 json 文件中时,新发送的消息将不会包含在那个重装。
问题:
需要考虑的几点:
-> 搜索 Long Poll (COMET)
-> 为什么 setInterval 刷新屏幕,它应该只是附加来自服务器的新消息
-> 如果您使用基于 HTML5 的浏览器,请检查 Websockets 和服务器端事件。
-> 在服务器端使用数据库操作,而不是文件操作。它还将提高可维护性,考虑到 1000 个不同用户相互聊天的情况,这些文件将很难维护。
-> 服务器应该发送新的增量消息,它不应该只是再次将整个对话发送给客户端来解析和重新加载。
| 归档时间: |
|
| 查看次数: |
591 次 |
| 最近记录: |