Gearman 的安装和使用

发布时间:2019-07-03 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Gearman 的安装和使用脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

1、安装 Gearman

首先,下载 Gearman 守护程序 gearmand 的最新代码(地址),解压缩这个 tarball,并安装(安装需要 root 权限)。

$ wget https://Launchpad.net/gearmand/1.2/1.1.12/+download/gearmand-1.1.12.tar.gz
$ tar xvzf gearmand-1.1.12.tar.gz
$ cd gearmand-1.1.12
$ ./configure
$ make
$ sudo make install

如果 configure 时,提示 configure: error: could not find boost,则需要先安装 boost library:

$ yum install boost-devel

安装 gearmand 后,构建 PHP 扩展。您可以从 PECL 获取这个 tarball(地址)。

$ wget http://pecl.php.net/get/gearman-1.1.2.tgz
$ tar xvzf gearman-1.1.2.tgz
$ cd gearman-1.1.2

有了这些代码后,就可以开始构建扩展了:

$ phpize
$ ./configure
$ make
$ make install

如果 configure 时提示错误:configure: error: C PReprocessor "/lib/cpp" fails sanITy check,则需要安装 c++ 编译器相关 package:

yum install glibc-headers
yum install gcc-c++ 
yum install kernel-headers

这个 Gearman 守护程序通常被安装在 /usr/sbin。可以从命令行直接启动此守护程序,也可以将这个守护程序添加到启动配置中,以便在机器每次重启时就可以启动这个守护程序。
接下来,需要安装 Gearman 扩展。打开 php.ini 文件(可以通过 php --ini 命令快速找到这个文件),然后添加代码行 extension = gearman.so:

$ php --ini    //Loaded Configuration File: /etc/php/php.ini
$ vi /etc/php/php.ini 
...
extension = gearman.so

保存此文件。要想验证扩展是否启用,请运行 php --info,然后查找 Gearman:

$ php --info | grep gearman

此外,还可以用一个 PHP 代码片段来验证构建和安装是否得当。将这个小应用程序保存到 verify_gearman.php:

<?php
  print gearman_version() . "n";
?>

接下来,从命令行运行此程序:

$ php verify_gearman.php    //0.10

如果这个版本号与之前构建和安装的 Gearman 库的版本号相匹配,那么系统就已准备好了。

然后启动这个 agent,即 Gearman 守护程序:

$ gearmand -d

2、从 PHP 使用 Gearman

用 PHP 编写的一个 Gearman worker。将这些代码保存在一个名为 worker.php 的文件中。

<?php
    $worker= new GearmanWorker();
    $worker->addServer();
    $worker->addFunction("title", "title_function");
    while ($worker->work());

    function title_function($job){
        return ucwords(strtolower($job->workload()));
    }
?>

用 PHP 编写的一个 producer,或 client。将此代码保存在一个名为 client.php 的文件内。

<?php
    $client= new GearmanClient();
    $client->addServer();
    print $client->do("title", "AlL THE World's a sTagE");
    print "n";
?>

现在,可以用如下的命令行连接客户机与 worker 了:

$ php worker.php &amp;
$ php client.php
All The World's A Stage
$ jobs
[3]+  Running                 php worker.php &

来源于:用 Gearman 分发 PHP 应用程序的工作负载

脚本宝典总结

以上是脚本宝典为你收集整理的Gearman 的安装和使用全部内容,希望文章能够帮你解决Gearman 的安装和使用所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。