我有一个网站,其中有聊天室,我可以使用该聊天室发送AJAX请求,以检查某人是否收到新消息。如果收到新消息,它将被添加到DOM而不刷新页面(如Facebook)。
我正在使用:-
setInterval(check_if_new_message, 1000);
即一个AJAX请求每秒检查一次消息。
这和我尝试在本地服务器上运行时的预期效果一样。但是后来我在GoDaddy上购买了Starter Shared Linux Hosting,然后我的ajax请求无法正常工作。前100-150个请求运行正常,但之后,它在浏览器的控制台中显示为 net::ERR_CONNECTION_CLOSED
之类的错误。
setInterval(check_if_new_message, 1000);
答案 0 :(得分:1)
您可以看到您正在使用:
setInterval(check_if_new_message, 1000);
这意味着您每隔1秒钟就会拨打一次 check_if_new_message 。由于它在您的计算机上,因此在localhost中可以很好地工作。但是,当您在实时服务器上尝试此操作时,您将获得:
net::ERR_CONNECTION_CLOSED
这是因为您的服务器无法处理那么多请求。您的服务器的RAM可能更少。
对于实时聊天应用程序,这不是一个好习惯。
如果要制作实时聊天应用程序,请使用 WebSocket 。
WebSocket的有用资源: