gpt4 book ai didi

php - 对实时应用程序使用持续的 ajax 请求会给服务器/数据库带来压力吗?

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

好吧,所以我试图构建类似于实时应用程序的东西(一旦添加就从数据库中获取新数据的东西),我能想到的唯一解决方案是不断使用 ajax 请求(通过javascript 中的 setInterval() 方法)每隔几秒钟检查一次新信息,但我很好奇这会给数据库或服务器带来什么样的压力。

这样做会不会太过分了,或者是否有更好的方法来构建实时应用程序?

最佳答案

您的问题归结为两个选项,long pollingshort polling。在第一个选项中,一个 AJAX 请求被发送到服务器。服务器搜索新的更新。如果找到,它会立即返回。否则它会休眠,比如说 0.5 秒,之后它会再次搜索更新。这会持续一段规定的时间,之后发送数据数组中的任何内容。收到响应后,JS 可以采取适当的响应(如果有 一些数据,也许使用它来操作 DOM),然后发送另一个请求,这将无限期地继续下去。这有一个缺点,它会消耗服务器端的大量资源。但是,如果您希望新的更新几乎立即反射(reflect)出来(例如在 Facebook 中),这可能是您最好的选择。

在第二个选项中,正如您提到的,服务器端的负载减少了。但是反射(reflect)更新所花的时间可能会更多。另外,如果用户的网速较慢,则会增加延迟。更不用说,重复请求会浪费用户带宽(尽管如果您将站点设计为确保仅发送最少的数据,则可以减轻这种情况)。 Websockets API 可能很方便,但据我所知,并非所有浏览器都完全支持它,除了最新版本。

关于php - 对实时应用程序使用持续的 ajax 请求会给服务器/数据库带来压力吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12411378/

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