首页 > 解决方案 > 在多个内核中处理一个 HTTP 请求

问题描述

我正在努力解决流动的 CPU 内核问题。

我在我的应用程序中有一些硬图表数据收集逻辑,它基于许多相互关联的数据,它目前是基于 PHP 构建的

所以问题基本上是我的机器有多个 CPU 核心,但是一个http 请求在任何 php 模式下只需要一个 CPU 核心 Fast CGI , CGI ...

所以我想知道在以下任何语言中是否有一些解决方法

PHP , 节点, JAVA , C++ ??

这样您的一次执行将使用/涉及多个 CPU 内核

标签: javaphpc++node.js

解决方案


为此,您将需要使用多线程。例如,在 PHP 中,您需要从 PECL 安装 pthread:

> /<php-install-dir>/bin/pecl install pthreads

然后通过在 php.ini 中添加 .so 扩展名来启用它。

然后你可以像这样运行线程:

<?php
    class MyThread extends Thread {
        public function run() {
            /* Your code here */
        }
    }
    $thread1 = new MyThread();
    $thread2 = new MyThread();
    $thread1->start();
    $thread2->start();
?>

它在所有编程语言中都非常相似。


推荐阅读