php用gearman如何做任务分发的操作?

文本主要给大家介绍的是php实现gearman任务分发的操作,包括安装gearman、gearman的使用、gearman异步的处理任务和gearman并行的执行多个任务的内容,感兴趣的朋友就继续往下看吧。
 
       一、安装gearman
 
       下载gearman源码包
 
https://launchpad.net/gearmand/+download
       如: gearmand-1.1.12.tar.gz
 
       下载php的gearman扩展包
 
http://pecl.php.net/package/gearman
       如: gearman-1.1.2.tgz
 
       安装gearman
 
> yum install boost-devel gperf libevent-devel libuuid-devel
> tar xf gearmand-1.1.12.tar.gz
> cd gearmand-1.1.12
> ./configure
> make && make install
       安装gearman的php扩展(建议php版本不要过高,因为php7的gearman扩展目前还没有出来)
 
> yum install autoconf
> tar xf gearman-1.1.2.tgz
> cd gearman-1.1.2
> /data/php56/bin/phpize
> ./configure --with-php-config=/data/php56/bin/php-config
> make && make install
       修改php.ini
 
> vi /data/php56/lib/php.ini
       添加如下两项
 
extension_dir=/data/php56/lib/php/extensions/no-debug-zts-20131226/
extension=gearman.so
       查看扩展
 
> /data/php56/bin/php -m
       二、简单的使用gearman
 
 
       首先我们编写client.php
 
<?php
//创建一个客户端
$client = new GearmanClient();
//添加一个job服务
$client->addServer('127.0.0.1', 4730);
//doNormal是同步的,等待worker处理完成返回结果
//建议不要使用do()了
$ret = $client->doNormal('sum', serialize(array(10, 10)));
 
if($ret) {
  echo '计算结果:', $ret, "\n";

dawei

【声明】:乐山站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。