Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我目前正在使用 cURL multi 在几秒钟内检查数千个 http 状态代码,并且效果很好。 但是,我想知道 - 他们是否可以使用 cURL 或其他 PHP 多任务方法检查端口是否正在响应(例如 mysql)?
您可以使用fsockopen()扫描端口,但每个 PHP 脚本在 1 个线程上运行。
fsockopen()
http://php.net/manual/en/function.fsockopen.php
简短的回答:
PHP 中没有线程。
但是,您可以查看pcntl扩展名。它与线程无关,它是 fork(这意味着将为每个 fork 创建一个进程)。
几年前开发了一个Thread 扩展,但现在已经有 2 年没有更新了。
分叉是非常有价值的,可以在您的用例中使用,但是它不容易维护或编写。根据您的需要,您可能更希望使用 python 或 perl,它们都具有更好的线程支持。