运行 php 线程



我在ubuntu linux上安装了一个php,运行良好,但现在我需要使用池类。

我在端口 80 上运行了普通的 php 和 apache 设置。我想使用池类创建 100 个工作线程来处理许多行 mysql 数据。

我应该像php -f file.php这样的cli运行基于池类的程序,还是应该使用什么方法。

在端口 80 上向最终用户提供内容的普通 php 是否与在 php cli 上提供内容的普通 php 不同?

如果我从 CLI 运行池程序,运行基于池类的程序会占用普通的 php 资源吗?

在要求中

pthreads 需要使用 ZTS 构建 PHP(Zend Thread Safety) enabled ( --enable-maintainer-zts or --enable-zts on Windows )

依靠官方 PHP pthreads 页面:

警告 pthreads 扩展不能在 Web 服务器环境中使用。因此,PHP 中的线程处理应仅保留在基于 CLI 的应用程序上。

因此,通过CLI使用线程脚本是个好主意(这是唯一合理的方法)。 另请参阅此

我不明白你所说的"在端口 80 上向最终用户提供内容的普通 php 与在 php cli 上提供的普通 php 是否不同?"到底是什么意思——在端口 80 上,您的 Apache 服务器运行脚本并通过 HTTP/S 将输出提供给最终用户。在CLI中,默认STDOUT的输出可以相同,但只有您喜欢最终用户。

一个有 100 个工作人员的池将"吃掉"大量的系统资源。

最新更新