33.4. Gearman

简介:

33.4.1. Getting Started with Gearman

33.4.1.1. CentOS

rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

yum install gearmand -y
chkconfig gearmand on
service gearmand start
			

配置启动参数

			
cat >> /etc/sysconfig/gearmand <<EOF

OPTIONS="--log-file=/var/log/gearman.log --threads=512"
EOF
			
			

33.4.1.2. Ubuntu

$ apt-cache search gearman | grep gearman
drizzle-plugin-gearman-udf - Gearman User Defined Functions for Drizzle
drizzle-plugin-logging-gearman - Gearman Logging for Drizzle
gearman - Distributed job queue
gearman-job-server - Job server for the Gearman distributed job queue
gearman-server - Gearman distributed job server and Perl interface
gearman-tools - Tools for the Gearman distributed job queue
libgearman-client-async-perl - asynchronous client for the Gearman distributed job system
libgearman-client-perl - client for the Gearman distributed job system
libgearman-dbg - Debug symbols for the Gearman Client Library
libgearman-dev - Development files for the Gearman Library
libgearman-doc - API Documentation for the Gearman Library
libgearman6 - Library providing Gearman client and worker functions
mod-gearman-doc - Documentation and examples for Mod-Gearman
mod-gearman-module - Nagios/Icinga event broker module for Mod-Gearman
mod-gearman-tools - Tools for mod-gearman
mod-gearman-worker - Worker agent for Mod-Gearman
python-gearman - Python interface to the Gearman system
python-gearman.libgearman - Python wrapper of libgearman
python3-gearman.libgearman - Python 3 wrapper of libgearman
			

33.4.1.3. 防火墙设置

查看gearman工作端口

# grep gearman /etc/services
gearman         4730/tcp                # Gearman Job Queue System
gearman         4730/udp                # Gearman Job Queue System
			

iptables 设置

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 4730 -j ACCEPT
			

33.4.2. gearman

控制台 A

gearman -w -f wc -- wc -l
		

控制台 B

		
#wc -l < /etc/passwd
30

# wc -l < /etc/passwd
30
		
		

停止 gearman 进程再试

		
# /etc/init.d/gearmand stop
Stopping gearmand:                                         [  OK  ]

[root@haproxy ~]# gearman -f wc < /etc/passwd
gearman:gearman_client_run_tasks:gearman_connection_flush:could not connect
		
		

压力测试

		
find / -type f | awk '{ print "gearman -f wc < " $1 }' | bash
		
		

33.4.3. Gearman PHP Extension

		
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

yum install libgearman-devel
pecl install channel://pecl.php.net/gearman-0.8.3

cat >> /srv/php/etc/conf.d/gearman.ini <<EOF
extension=gearman.so
EOF
		
		

测试安装

# php -r 'printf("%s \r\n", gearman_version());'
0.14
	



原文出处:Netkiller 系列 手札
本文作者:陈景峯
转载请与作者联系,同时请务必标明文章原始出处和作者信息及本声明。

目录
相关文章
|
网络协议 PHP Python
|
网络协议 PHP Python
|
数据格式 缓存 PHP
Gearman的使用
@import url(http://www.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css); @import url(/css/cuteeditor.css); 对于分布式网络环境或者有大量任务的应用,我们需要将任务在不同的服务器之间进行分布,这个时候正好是Gearman发挥实力的时候。
1304 0
Gearman安装
此处记载自己安装的过程 1.Gearman安装 http://blog.chinaunix.net/uid-27177626-id-4325909.html 2.安装boost libraries 第一步:解压压缩包,命令如下,(#号仅为起始标记作用,敲命令时忽略):    # cd /usr/local/    # tar -zxvf boost_1_52_0.tar.g
1365 0
|
PHP Python Ubuntu
|
vr&ar Perl 数据库管理
Gearman 集中处理日志
F# job server 安装在gearman-job服务器上。  worker安装在worker服务器上。  全部以gearman用户运行。  job server 启动命令:  /opt/app/gearman/sbin/gearmand -L 192.
1265 0
|
Java Spring 数据格式
Gearman使用示例
最近的一个旧项目重构过程中,使用到了gearman这个开源项目,简单来讲,这是一个类似MQ的异步系统,一边派发任务,一边处理任务(有类似MQ中的消息发送方与接收方),目前支持java,php等多种语言,缺点是存在单点问题(server的HA官方没有提供方案,需要二次开发)。
1246 0
x3d
|
监控 PHP
用于PHP的Gearman Worker管理工具GearmanManager
项目地址:https://github.com/brianlmoon/GearmanManager PHP环境要求 PHP 5.5.9 POSIX extension Process Control extension pecl/gearman or Net_Gearman 使用GearmanManager的理由 运行Gearman的Worker是项比较让人讨厌的任务。
x3d
1176 0
Rundeck,RUN起来!!
零晨一点, 还好,跑起来了。。 满满的英文文档,肿么办?? 拿下!
1148 0

热门文章

最新文章