gpt4 book ai didi

php - EventSource 与轮询 ajax 的效率/开销?

转载 作者:行者123 更新时间:2023-11-29 17:25:55 26 4
gpt4 key购买 nike

我正在编写一个简单的应用程序,它在使用方面与聊天应用程序非常相似。主持人启动一个“房间”,参与者可以加入并向该房间发送消息。

我正在努力使代码尽可能简单。后端没有任何花哨的 PHP。

我的第一个想法是只对客户端进行轮询 ajax,以查看房间中是否发布了新消息。然后我认为这会导致对服务器的大量请求(虽然它们很小,但仍然如此)。

然后我研究了更多的 HTML5 方法并找到了 EventSource - 这在理论上似乎是正确的,但我想知道它在幕后只是轮询了 ajax。

然后是 comet,但它还需要一个我不太急于设置的服务器端组件。

我想我可以使用长轮询 - 这是最好的方法吗?

此外,您如何最大限度地减少所有客户端请求新数据的数据库请求?

最佳答案

我认为短轮询是最简单的代码,但它可能会给服务器带来不必要的负载。

长轮询效率更高,但您必须拥有能够有效支持多对多连接的服务器(即不是 Apache)。

是的,EventSource 只是一个美化的长轮询,但使用起来很愉快。

回答您的第二个问题:最小化数据库请求数量的最佳方法是不发出数据库请求。例如,将东西放入 memcached。

关于php - EventSource 与轮询 ajax 的效率/开销?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8784160/

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