`
xiaoyu966
  • 浏览: 253683 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

gearman的安装启动以及python API入门例子

阅读更多

============================================================================

原创作品,允许转载。转载时请务必以超链接形式标明原始出处、以及本声明。

请注明转自:http://yunjianfei.iteye.com/blog/

============================================================================


Gearman是一套非常优秀的任务分发框架,可以用于分布式计算。现在我来介绍一下gearmand服务的安装启动以及gearman的python 模块的安装以及简单例子。

 

操作系统:rnel 5.7

1. 首先,我们需要安装gearmand,在centos和rhel环境下,我们只需运行以下命令:

yum install gearmand -y

 

注意:如果不希望通过yum的方式来安装gearmand,可以参照我的另一个帖子,通过源码编译安装,地址为:http://yunjianfei.iteye.com/blog/2017078

安装完毕之后,我们启动gearmand服务

gearmand -p 4730 -L 10.22.10.90 --log-file=/tmp/gearmand-4730.log --pid-file=/tmp/gearmand-4730.pid -d

 

2. 安装python-gearman

gearman的python模块,地址为:https://pypi.python.org/pypi/gearman/2.0.2 

我们可以用以下命令安装(两个命令均可,二选一):

easy_install gearman
pip install gearman

 或者通过源码安装:

wget https://pypi.python.org/packages/source/g/gearman/gearman-2.0.2.tar.gz --no-check-certificate
tar zxvf gearman-2.0.2.tar.gz 
cd gearman-2.0.2 
 python setup.py install

 这样,我们就完成了python-gearman的安装。

==============================================================================、

下面,列举一个简单的python例子:

首先,我们需要编写一个worker,代码如下:

文件名:echoWorker.py

#!/usr/bin/env python

import os
import gearman
import math
class MyGearmanWorker(gearman.GearmanWorker):
    def on_job_execute(self, current_job):
        print "Job started"
        print "===================\n"
        return super(MyGearmanWorker, self).on_job_execute(current_job)

def task_callback(gearman_worker, gearman_job):
    print gearman_job.data
    print "-----------\n"
    return gearman_job.data

my_worker = MyGearmanWorker(['10.22.10.47:4730'])
my_worker.register_task("echo", task_callback)
my_worker.work()

 然后,编写client,如下:

文件名:echoClient.py

#!/usr/bin/env python2.7

from gearman import GearmanClient


gearman_client = GearmanClient(['192.168.10.11:4730'])

gearman_request = gearman_client.submit_job('echo', 'test gearman')

result_data = gearman_request.result
print result_data

 注意上面GearmanClient(['192.168.10.11:4730'])中的IP地址,需要根据实际启动gearmand服务的IP地址和端口号为准。

 

然后,我们运行以下命令:

python echoWorker.py

python echoClient.py

 即可看到输出。

 

关于python-gearman的更多文档信息,可以参照:http://pythonhosted.org//gearman/

0
0
分享到:
评论

相关推荐

    gearman的安装启动及python API使用实例

    本文讲述了gearman的安装启动及python API使用实例,对于网站建设及服务器维护来说非常有用! 一、概述: Gearman是一款非常优秀的任务分发框架,可以用于分布式计算。具体的gearmand服务的安装启动及gearman的...

    Gearman安装相关资源

    Gearman安装相关资源 《gearmand-1.1.12.tar.gz》 《gearman-1.1.2.tgz》

    Gearman C# API和示例

    Gearman 的C#开发API和一个简单自带demo,vs2008.

    Gearman安装可能涉及到的安装包

    该资源包括安装Gearman时可能涉及到的软件包 具体包括gearmand、gearman、php、gperf、libevent

    Gearman java APIs和一个小Demo

    Gearman java API和一个小Demo

    Python库 | gearman-1.3.1.tar.gz

    资源分类:Python库 所属语言:Python 资源全名:gearman-1.3.1.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    gearman下载gearman下载

    gearman下载gearman下载gearman下载gearman下载gearman下载

    gearman安装包 rpm

    安装gearman 如果没有mysql客户端,需要安装mysql客户端 yum install -y libevent-devel 上传gearman.zip,解压unzip gearman.zip rpm -ivh uuid-1.5.1-3.el5.x86_64.rpm rpm -ivh libgearman-1.1.8-2.el5.x86_64...

    Gearman中文手册,Gearman中文详解,gearman手册chm

    Gearman中文手册,gearman手册chm,Gearman中文详解,分享gearman技术心得,主要是为了分享技术,所以不要大家的资源分。

    java-gearman-service-0.6.6.zip

    其实在gearman中,client和worker的编写不复杂,但是不同厂商提供的API是不大相同的,本附件中用的gearman java API就是java-gearman-service-0.6.6.jar,而不是gearman官方的gearman-java-0.6.jar。两者的调用API是...

    Gearman Worker实例 C++ vs2008

    Gearman的一个worker实例,用c++编写,windows平台下,vs2008

    java-gearman-service(gearman-java-service)

    java实现gearman的job实现的jar包,包括gearman server,client和work客户端API

    Python库 | gearman-2.0.1.tar.gz

    资源分类:Python库 所属语言:Python 资源全名:gearman-2.0.1.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    python基于json文件实现的gearman任务自动重启代码实例

    一:在gearman任务失败后,调用task_failed def task_failed(task, *args): info = '\n'.join(args) datetime = local_datetime() text = '{} FAILED:\n{}\n当前响应worker已关闭\n{}\n-->【{}】'.format...

    MySQL插入数据时插入无效列的解决方法

    1、错误描述 ...2、错误原因 数据库表中的字段:sno sname sage ssex 插入数据时: sno sname sage man 本来是想插入ssex这个字段的值为“man”,... 您可能感兴趣的文章:gearman的安装启动及python API使用实例rhel5.7下

    Gearman中文手册最新完整版chm

    Gearman中文手册,gearman手册chm,Gearman中文详解,分享gearman技术心得,主要是为了分享技术,所以不要大家的资源分。

    gearman 文档

    gearman 文档,gearman 是个集群计算框架,通过对其扩展能够充分利用集群计算

    GearMAN讲解及所带来的变革

    GearMAN讲解及所带来的变革 全面介绍Gearman原理、应用

    Gearman环境搭建资料

    Gearman环境搭建可能会用到的资料. gearmand-1.1.12.tar.gz libevent-2.0.22-stable.tar.gz libuuid-1.0.3.tar.gz

    gearman-1.1.2

    1)软件资源列表:《gearmand-1.1.12.tar.gz》,《gearman-1.1.2.tgz》。 2)安装操作系统环境:CentOS-6.5,(其它linux操作系统请自行尝试)。 3)本软件安装步骤详解:...

Global site tag (gtag.js) - Google Analytics