php中的Parellal处理

Parellal processing in PHP

本文关键字:处理 Parellal 中的 php      更新时间:2023-10-16

我在php中写了一个高性能脚本。这需要30毫秒的执行时间。

现在,我已经使此脚本更加密封,因此我在以下几点上进行了RND。我正在寻找的是在代码的一部分上进行并行处理,以最大程度地减少30毫秒至15毫秒的时间,并分发更多的时间,以便脚本可以提供更多的请求。

  1. Gearman

我使用它的异步任务处理程序在Gearman上完成了一些RND,我可以在PHP代码中实现并行任务。

  1. C

第二个选项是将整个PHP脚本转换为C 扩展名,该脚本有助于改进脚本,在C 中,我也可以使用线程。

我正在计划的所有这些,所以我需要帮助,它们是我可以扩展脚本的其他方式?

C 可以在并行处理中有助于吗?

您可以尝试将工作量切成碎片,让多个Gearman工人运行您的任务(并行)。不确定它是否会更快。

是的,您可以轻松地将PHP算法转换为C 代码,我一直使用PHP太慢的软件片段来执行此操作。实际上,我已经启动了一个可能有用的库,这使此转换非常简单:请参阅http://www.php-cpp.com。

单独转换为C 的转换已经可以提高性能。仅通过将算法从PHP转换为本机C ,从30ms到15ms并不是很不寻常的。如果仅此功能还不够,则可以启动多个线程。我不能建议您如何做到这一点,因为我必须知道您的算法才能查看它们是否适合在线程中分配。但是C 11 STD库现在带有线程类,这使此简单。