我建立一个大型的PHP框架。现在我们试图利用每个脚本中的所有可能的核心。mutithreading在PHP /阿帕奇
如何在多个内核上运行一个脚本。例如,假设我在一个php文件中有两个函数,它们可以进行大量处理。我如何在两个不同的处理器上同时运行这两个处理器,然后将结果返回给脚本并继续执行其余的处理。
是否有可用于创建Web应用程序像这样的任何其他脚本...我试图寻找上线,但只有我已经找到解决方案是在桌面应用
我建立一个大型的PHP框架。现在我们试图利用每个脚本中的所有可能的核心。mutithreading在PHP /阿帕奇
如何在多个内核上运行一个脚本。例如,假设我在一个php文件中有两个函数,它们可以进行大量处理。我如何在两个不同的处理器上同时运行这两个处理器,然后将结果返回给脚本并继续执行其余的处理。
是否有可用于创建Web应用程序像这样的任何其他脚本...我试图寻找上线,但只有我已经找到解决方案是在桌面应用
你想看看PCNTL。请记住,它是专为CGI-MOD但可以用于Apache的。
用法示例:
<?php
// Create the MySQL connection
$db = mysql_connect($server, $username, $password);
$pid = pcntl_fork();
if ($pid == -1) {
// Fork failed
exit(1);
} else if ($pid) {
// We are the parent
// Can no longer use $db because it will be closed by the child
// Instead, make a new MySQL connection for ourselves to work with
$db = mysql_connect($server, $username, $password, true);
} else {
// We are the child
// Do something with the inherited connection here
// It will get closed upon exit
exit(0);
?>
这将是伟大的孩子的过程,但我想运行两种功能同时... – Anush
好分叉使得该过程的克隆,这样你就可以用它做任何你需要的。无论pcntl_fork()是你想要的,PCNTL都是必需的。这个例子只是一个例子:) – AlienWebguy
但是不会让一个克隆变得昂贵,而且你会如何确定哪个函数是哪个。 – Anush
在PHP中你不能使用线程。这个旧帖子可能是有用的,但:
,所以我想你需要通过任何的IPC选项叉和同步,所以这也较早的帖子可能是帮助:How to IPC between PHP clients and a C Daemon Server?
如果你有可能已经利用核许多客户。你可以*可能*收益是一个更快的反应......它值得吗?什么'mpstat'显示? –