源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2020-07-30 16:12 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:gearman的安装启动及python API使用实例
本文讲述了gearman的安装启动及python API使用实例,对于网站建设及服务器维护来说非常有用! [b]一、概述:[/b] Gearman是一款非常优秀的任务分发框架,可以用于分布式计算。具体的gearmand服务的安装启动及gearman的python 模块的安装以及简单示例如下:   操作系统:rnel 5.7 1. 首先,我们需要[b]安装gearmand[/b],在centos和rhel环境下,我们只需运行以下命令: yum install gearmand -y   注意:如果不希望通过yum的方式来安装gearmand,可以通过源码编译安装,具体安装方法可以参考:[url=http://www.1sucai.cn/article/51999.htm]http://www.1sucai.cn/article/51999.htm[/url] 安装完毕之后,就可以启动gearmand服务:
gearmand -p 4730 -L 10.22.10.90 --log-file=/tmp/gearmand-4730.log --pid-file=/tmp/gearmand-4730.pid -d
2.[b]安装python-gearman[/b] 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的安装。 [b]二、使用示例:[/b] 下面,列举一个简单的python例子: 首先,我们需要编写一个worker,代码如下: 1.文件名: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() 

2.编写client,如下: 文件名:echoClient.py
#!/usr/bin/env python2.7 
from gearman import GearmanClient 
gearman_client = GearmanClient(['192.168.12.34:4730']) 
gearman_request = gearman_client.submit_job('echo', 'test gearman') 
result_data = gearman_request.result 
print result_data 

注意上面GearmanClient(['192.168.12.34:4730'])中的IP地址,需要根据实际启动gearmand服务的IP地址和端口号为准。   3.然后,我们运行以下命令:
python echoWorker.py
python echoClient.py

至此,即可看到输出。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部