发布于 2014-10-22 02:18:03 | 314 次阅读 | 评论: 0 | 来源: 网友投递
这里有新鲜出炉的Python3 Cookbook中文版,程序狗速度看过来!
Python编程语言
Python 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。
本文为大家讲解了gearman的安装启动及python API使用方法,感兴趣的同学参考下。
Gearman是一个用来把工作委派给其他机器、分布式的调用更适合做某项工作的机器、并发的做某项工作在多个调用间做负载均衡、或用来在调用其它语言的函数的系统。
本文讲述了gearman的安装启动及python API使用实例,对于网站建设及服务器维护来说非常有用!
一、概述:
Gearman是一款非常优秀的任务分发框架,可以用于分布式计算。具体的gearmand服务的安装启动及gearman的python 模块的安装以及简单示例如下:
操作系统:rnel 5.7
1. 首先,我们需要安装gearmand,在centos和rhel环境下,我们只需运行以下命令:
yum install gearmand -y
注意:如果不希望通过yum的方式来安装gearmand,可以通过源码编译安装,
安装完毕之后,就可以启动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,代码如下:
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
至此,即可看到输出。