Gearman In Action

分布式任务系统是一个常见的需求,如果将 Gearman 作为 build block 来搭建这个系统的话,这样能够 make your life much easier。

首先看看 Gearman 是如何工作的:

 

gearman

 

Gearman 的中心是 Gearman Job Server 负责监听任务请求和分发,目前有官方支持的C、Java和Perl版本的服务器。而 Worker 和 Client 部分可以使用多种语言,总有一种适合的可选。

总体来说,Gearman是比较灵活的。在部署环境中,整个Gearman集群可能看起来是这样的:

gearman cluster

 

下面是安装Gearman的笔记,也许可以帮助到第一次接触它的同学。

1 安装环境

>cat /etc/issue
CentOS release 6.4 (Final)
Kernel \r on an \m
>uname -a
Linux huys 2.6.32-358.6.2.el6.x86_64 #1 SMP Thu May 16 20:59:36 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

2 安装依赖包

> sudo yum install make gcc gcc-c++ 
> sudo yum install boost-devel gperf libevent-devel libuuid-devel openssl-devel

3 安装 gearmand

> wget https://launchpad.net/gearmand/1.2/1.1.11/+download/gearmand-1.1.11.tar.gz
> tar xvf gearmand-1.1.11.tar.gz
> cd gearmand-1.1.11
> ./configure --prefix=/srv/gearman
> make -j 2
> sudo make install

4 启动 gearmand

最好增加一下变量信息。

>export PATH=/srv/gearman/bin:/srv/gearman/sbin:$PATH
>export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/srv/gearman/lib
>gearmand -d

5 建立 worker 和 client

# Worker
gearman -w -f wc -- wc -l

# Client
gearman -f wc < /etc/passwd

实际应用中,可以考虑采用Python或者C#之类的常用语言来编写。

 

posted @ 2013-11-02 22:01  独木  阅读(450)  评论(0编辑  收藏  举报