【发布时间】:2015-10-03 07:07:26
【问题描述】:
我正在使用 laravel 5。我需要的是调用 python gearman worker。
我在 python 中创建了一个 gearman worker。 我在 laravel 5 中创建了一个 gearman 客户端。
我在控制器中直接添加了 gearman 客户端代码,例如:
$client = new GearmanClient();
$client->addServer();
$job_data = array("func_name" => "searchTweets", "query" => "query_to_search");
$result = $client->doNormal("php_twitter_worker", json_decode($job_data));
if ($result) {
print_r($result);
}
但它会引发错误:
Class 'App\Http\Controllers\GearmanClient' not found
我知道错误是什么,因为控制器中没有 GearmanClient 类。其实我不知道怎么用。
在做了一些研发之后,我找到了一个使用gearman in laravel5 的包,但不知道如何将其用作 Gearman 客户端以及它如何调用我的 python gearman worker。
对此有什么帮助吗?
【问题讨论】:
-
嗨!你在用作曲家吗?如果是,Gearman 需要什么库?您肯定在这里缺少使用命名空间包含
-
是的,在 laravel 5 中,您需要使用 composer 自动包含您需要的库,然后将它们添加到提供程序并可选地给它一个别名。你知道怎么做吗?
-
@Thomas:我正在使用作曲家。但是对于 gearman,我不需要任何命名空间。我已经在我的lampp中直接安装了gearman。 Gearman 直接在核心 php 中工作,不使用任何命名空间。但是如何在 laravel5 中使用呢。
-
@JuanBonnett:不,我不知道。你能帮帮我吗?
-
你是说你可以实例化 GearmanClient();在任何其他使用 vanilla PHP 但不是 laravel 的应用程序中?
标签: php python laravel-5 gearman