Gearman安装及使用
基础安装包
- yum install vim wget gcc gcc-c++ make dos2unix gperf libevent libevent-devel zlib-devel bzip2-devel openssl-devel ncurses-devel boost boost-devel mysql-devel
安装gearman 异步队列
- # wget https://launchpad.net/gearmand/1.2/1.1.9/+download/gearmand-1.1.9.tar.gz
- # tar -zxvf gearmand-1.1.9.tar.gz
- # cd gearmand-1.1.9
- # ./configure 如果出现错误请查看下面的错误解决
成功后如下
- * LIBS:
- * LDFLAGS Flags:
- * Assertions enabled: no
- * Debug enabled: no
- * Warnings as failure: no
- * Building with libsqlite3 no
- * Building with libdrizzle no
- * Building with libmemcached not found
- * Building with libpq no
- * Building with tokyocabinet no
- * Building with libmysql yes
- * SSL enabled: no
- * make -j: 3
- * VCS checkout: no
- # make
- # make install
安装gearman php 扩展
- # wget http://pecl.php.net/get/gearman
- # mv gearman gearman.tar.gz
- # tar -zxvf gearman.tar.gz
- # cd gearman-1.1.2/
- # phpize
- # ./configure
- # make
- # make install
- # cd /etc/php.d/
- # cp gd.ini gearman.ini
- # vim gearman.ini
- ; Enable gearman extension module
- extension=gearman.so
- # service php-fpm restart
错误解决
在configure过程中出现了以下错误:
- checking for Boost headers version >= 1.39.0… no
- configure: error: cannot find Boost headers version >= 1.39.0
解决办法:
- # yum search boost
- # yum install boost.x86_64
- # yum install boost-devel.x86_64
继续执行./configure出现以下错误
- checking for gperf... no
- configure: error: could not find gperf
解决办法:
- #yum search gperf
- #yum install gperf.x86_64
继续执行./configure出现以下错误
- checking test for a working libevent... no
- configure: error: Unable to find libevent
解决办法:
- # yum install libevent libevent-devel
gearman 参数说明
- Client mode: gearman [options] [<data>]
- Worker mode: gearman -w [options] [<command> [<args> ...]]
- Common options to both client and worker modes.
- -f <function> - Function name to use for jobs (can give many)
- -h <host> - Job server host
- -H - Print this help menu
- -v - Print diagnostic information to stdout(false)
- -p <port> - Job server port
- -t <timeout> - Timeout in milliseconds
- -i <pidfile> - Create a pidfile for the process
- Client options:
- -b - Run jobs in the background(false)
- -I - Run jobs as high priority
- -L - Run jobs as low priority
- -n - Run one job per line(false)
- -N - Same as -n, but strip off the newline(false)
- -P - Prefix all output lines with functions names
- -s - Send job without reading from standard input
- -u <unique> - Unique key to use for job
- Worker options:
- -c <count> - Number of jobs for worker to run before exiting
- -n - Send data packet for each line(false)
- -N - Same as -n, but strip off the newline(false)
- -w - Run in worker mode(false)
gearman异步队列使用:
下面先做个命令行测试:
首先开两个命令行窗口:
tty1:
- # gearman -w -f abc -- wc -m
表示统计用户输入了多少个字符。
tty2:
- # gearman -f abc 'aaaa'
4
输出结果正确。
# gearman -f abc < /etc/php.ini
当然也可以直接从文件中读入内容。
Gearman安装及使用的更多相关文章
- gearman安装及初次使用
官网: http://gearman.org/ 一篇文章: 利用Gearman实现异步任务处理 一.问题分析 问题:在性能测试过程中,发现用户管理平台在进行图片上传时,性能不佳. 分析:经过代码分析 ...
- CentOS的Gearman安装
背景:用PHP做一些简单的上传是没有任何的问题,但是要做断点上传好像也是没有大问题,但要是并发的切片加断点上传可能就会有问题了哟.第一个问题是合并问题:如果一上传就合并,PHP老半天不返回是一个方面( ...
- gearman安装实录
花了5个小时装好了gearman,问题不断,坑爹的服务器yum还坏了,悲催. 服务器系统:centos5.3 64位 gearman版本:1.1.8 安装包(相关依赖)下载 1.gearman安装包 ...
- gearman 安装
yum install gperfyum install libevent-develyum install libuuid-develwget https://launchpad.net/gearm ...
- Gearman 安装使用教程
Gearman是一个分发任务的程序框架,可以用在各种场合,Gearman更偏向于任务分发功能.它的任务分布非常简单,简单得可以只需要用脚本即可完成. Gearman 分布式任务实现原理上只用到2个字段 ...
- gearman安装问题总结
解决configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers. yum ...
- Centos7安装gearman和php扩展
Centos7安装gearman和php扩展 标签(空格分隔): php,linux gearman所需要的依赖 yum install \ vim \ git \ gcc \ gcc-c++ \ w ...
- gearman mysql udf
gearman安装 apt-get install gearman gearman-server libgearman-dev 配置bindip /etc/defalut/gearman-job-se ...
- Gearman + Nodejs + MySQL UDF异步实现 MySQL 到 Redis 的数据同步
[TOC] 1, 环境 CentOS, MySQL, Redis, Nodejs 2, Redis简介 Redis是一个开源的K-V内存数据库,它的key可以是string/set/hash/list ...
随机推荐
- Oracle 11gR2 RAC 常用维护操作 说明
一.启动和停止集群 在Oracle 11gR2 下的RAC,架构发生了变化.CRS的信息也是放在ASM 实例里的,所以要关asm,必须关闭crs, 如果还使用了acfs的话,一关crs那么acfs里的 ...
- ES6之6种遍历对象属性的方法
ES6之6种遍历对象属性的方法 for ... in 循环遍历对象自身的和继承的可枚举属性(不含Symbol属性). Obejct.keys(obj),返回一个数组,包括对象自身的(不含继承的)所有可 ...
- 高大上的JS工具
EtherPad (协同文件编辑): EtherCalc (协同电子表格编辑)
- Zigbee 的 mesh功能设置
1. 在编译选项中加入ZIGBEEPRO 最大的节点深度为20,网络模式为mesh网络 如果不配置,则为HOME_CONTROLS,支持5级路由深度,每个路由器最多可连接20个节点(最多包括6个路由器 ...
- Django安装与介绍
安装 Django是以Python为语言环境的,所以要先确保计算机上已经安装了Python. Linux ubuntu: sudo pip install Django==1.11.7 安装中指定了版 ...
- 操作系统-移动操作系统-百科: iOS(苹果公司的移动操作系统)
ylbtech-操作系统-移动操作系统-百科: iOS(苹果公司的移动操作系统) iOS是由苹果公司开发的移动操作系统.苹果公司最早于2007年1月9日的Macworld大会上公布这个系统,最初是设计 ...
- GC 提前晋升
如果Survivor 空间不足, 那么从 Eden 存活下来的和原来在 Survivor 空间中不够老的对象占满 Survivor 后, 就会提升到老年代, 可以看到这一轮 Minor GC 后老年代 ...
- Python 天气预报+微信
""" Description: 需要提供以下三个信息,在申请到的微信企业号当中可以找到 agentid corpid corpsecret Author:Nod Dat ...
- Linux下的压缩(zip)解压(unzip)缩命令
.zip命令 zip -r myfile.zip ./* 将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzip命令 unzip -o ...
- java UTC时间和local时间相互转换
java UTC时间和local时间相互转换 1.local时间转UTC时间 /** * local时间转换成UTC时间 * @param localTime * @return */ public ...