gpt4 book ai didi

php - 如何处理从一个客户端到一个 PHP 脚本的多个并行请求

转载 作者:可可西里 更新时间:2023-11-01 00:59:12 24 4
gpt4 key购买 nike

我有一个网页,当用户访问它时,会立即向单个 PHP 脚本发出多个 (10-20) Ajax 请求,该脚本根据请求中的参数返回具有高度聚合数据的不同报告。

问题是很多报告需要大量的 SQL 调用来获取必要的数据,在某些情况下,报告可能需要几秒钟才能加载。
结果,由于一个客户端向同一个 PHP 脚本发送多个请求,您最终会看到报告一次一个缓慢地加载到页面上。换句话说,报告的生成不是并行完成的,因此导致页面需要一段时间才能完全加载。

有没有办法在 PHP 中解决这个问题,并使从单个客户端到单个 PHP 脚本的所有请求都可以并行处理,从而可以更快地加载页面及其所有报告?

谢谢。

最佳答案

据我所知,可以在 PHP 中执行多线程。看看 pthreads extension .

您可以做的是使脚本的报告生成部分/功能并行执行。这将确保每个函数都在其自己的线程中执行,并且会更快地检索您的结果。此外,将最大并发线程数设置为 <= 10,这样它就不会成为资源消耗者。

Here是让您开始使用 pthreads 的基本教程。

还有一些more examples这可能会有帮助(尤其是您案例中的 SQLWorker 示例)

关于php - 如何处理从一个客户端到一个 PHP 脚本的多个并行请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32161195/

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