ubuntu 9.04下安装配置gearman
Author:gaojinbo
Time:2010-06-25
ubuntu 9.04下安装配置gearman V1.0 gearman安装配置
Gearman是最早由LiveJournal内部开发并使用的一个通用并行任务调度框架,允许不同语言直接通过非常简单的方式进行互操作。前台提交工作任务(Task)和参数,由后台工作进程(Worker)完成实际工作。
例如前台提交用户需要进行渲染的图片,由Gearman调度到后台提供渲染服务的工作进程,在完成工作后返回结果给前台进行展示。提交工作和完成工作的代码只需要通过预先协商好的参数格式进行交互,具体任务的调度、负载均衡、可靠性等,由Gearman服务器来确保。而针对大规模应用,可以很容易进行多路节点的集群部署。
在正式对外发布后,Danga Interactive用C重写了整个服务器代码,支持PHP, Perl, Python等常见脚本客户端,支持用memcached, sqlite, postgresql, tokyocabinet等作为任务持久化队列。
官方网站
http://gearman.org/
一、安装配置
1.下载地址
wget http://launchpad.net/gearmand/trunk/0.13/+download/gearmand-0.13.tar.gz
wget http://pecl.php.net/get/gearman-0.7.0.tgz
2.安装依赖包
apt-get install uuid-dev libevent-dev
3.编译安装gearmand
tar xvzf gearmand-0.13.tar.gz cd gearmand-0.13 ./configure make make install
4.编译安装gearman php扩展
tar xvzf gearman-0.7.0.tgz cd gearman-0.7.0 phpize ./confgiu ./configure make make install
5.添加模块
vi /etc/php5/cli/php.ini extension = gearman.so
6.验证模块是否加载
php –info | grep "gearman support"
gearman support => enabled
7.启动gearmand job server守护程序
/usr/local/sbin/gearmand -d -u nobody
8.查看是否正常启动
netstat -antup|grep gearmand
tcp6 0 0 :::4730 :::* LISTEN 8108/gearmand
二、从PHP使用Gearman
1.建立worker
vi 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()));
}
?>
2.建立client
vi client.php
<?php
$client= new GearmanClient();
$client->addServer();
print $client->do("title", "AlL THE World’s a sTagE");
print "\n";
?>
3.测试连接客户机与worker:
php worker.php
php client.php
All The World’s A Stage
jobs
[3]+ Running php worker.php &
这个 worker 应用程序继续运行,准备好服务另一个客户机。
配置完成!
七月 6th, 2010 at 17:32
老大,现在10.04啦!
七月 20th, 2010 at 21:25
10.04还不稳定呀,建议还是使用以前的稳定版,最好是tls的!
九月 18th, 2011 at 03:36
Our Trackback……
[...]very few websites that happen to be detailed below, from our point of view are undoubtedly well worth checking out[...]………