基础安装包

  1. 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 异步队列

  1. # wget https://launchpad.net/gearmand/1.2/1.1.9/+download/gearmand-1.1.9.tar.gz
  2. # tar -zxvf gearmand-1.1.9.tar.gz
  3. # cd gearmand-1.1.9
  4. # ./configure   如果出现错误请查看下面的错误解决

成功后如下

  1. * LIBS:
  2. * LDFLAGS Flags:
  3. * Assertions enabled:        no
  4. * Debug enabled:             no
  5. * Warnings as failure:       no
  6. * Building with libsqlite3   no
  7. * Building with libdrizzle   no
  8. * Building with libmemcached not found
  9. * Building with libpq        no
  10. * Building with tokyocabinet no
  11. * Building with libmysql     yes
  12. * SSL enabled:               no
  13. * make -j:                   3
  14. * VCS checkout:              no
  1. #  make
  2. #  make install

安装gearman php 扩展

  1. # wget http://pecl.php.net/get/gearman
  2. # mv gearman gearman.tar.gz
  3. # tar -zxvf gearman.tar.gz
  4. # cd gearman-1.1.2/
  5. # phpize
  6. # ./configure
  7. # make
  8. # make install
  9. # cd /etc/php.d/
  10. # cp gd.ini gearman.ini
  11. # vim gearman.ini
  1. ; Enable gearman extension module
  2. extension=gearman.so
  1. # service php-fpm restart

错误解决

在configure过程中出现了以下错误:

  1. checking for Boost headers version >= 1.39.0… no
  2. configure: error: cannot find Boost headers version >= 1.39.0

解决办法:

  1. # yum search boost
  2. # yum install boost.x86_64
  3. # yum install boost-devel.x86_64

继续执行./configure出现以下错误

  1. checking for gperf... no
  2. configure: error: could not find gperf

解决办法:

  1. #yum search gperf
  2. #yum install gperf.x86_64

继续执行./configure出现以下错误

  1. checking test for a working libevent... no
  2. configure: error: Unable to find libevent

解决办法:

  1. # yum install libevent libevent-devel

gearman 参数说明

  1. Client mode: gearman [options] [<data>]
  2. Worker mode: gearman -w [options] [<command> [<args> ...]]
  3. Common options to both client and worker modes.
  4. -f <function> - Function name to use for jobs (can give many)
  5. -h <host>     - Job server host
  6. -H            - Print this help menu
  7. -v            - Print diagnostic information to stdout(false)
  8. -p <port>     - Job server port
  9. -t <timeout>  - Timeout in milliseconds
  10. -i <pidfile>  - Create a pidfile for the process
  11. Client options:
  12. -b            - Run jobs in the background(false)
  13. -I            - Run jobs as high priority
  14. -L            - Run jobs as low priority
  15. -n            - Run one job per line(false)
  16. -N            - Same as -n, but strip off the newline(false)
  17. -P            - Prefix all output lines with functions names
  18. -s            - Send job without reading from standard input
  19. -u <unique>   - Unique key to use for job
  20. Worker options:
  21. -c <count>    - Number of jobs for worker to run before exiting
  22. -n            - Send data packet for each line(false)
  23. -N            - Same as -n, but strip off the newline(false)
  24. -w            - Run in worker mode(false)

gearman异步队列使用:

下面先做个命令行测试:

首先开两个命令行窗口:
tty1:

  1. # gearman -w -f abc  -- wc  -m

表示统计用户输入了多少个字符。
tty2:

  1. # gearman -f abc 'aaaa'

4
输出结果正确。

# gearman -f abc < /etc/php.ini

当然也可以直接从文件中读入内容。

Gearman安装及使用的更多相关文章

  1. gearman安装及初次使用

    官网:  http://gearman.org/ 一篇文章: 利用Gearman实现异步任务处理 一.问题分析 问题:在性能测试过程中,发现用户管理平台在进行图片上传时,性能不佳. 分析:经过代码分析 ...

  2. CentOS的Gearman安装

    背景:用PHP做一些简单的上传是没有任何的问题,但是要做断点上传好像也是没有大问题,但要是并发的切片加断点上传可能就会有问题了哟.第一个问题是合并问题:如果一上传就合并,PHP老半天不返回是一个方面( ...

  3. gearman安装实录

    花了5个小时装好了gearman,问题不断,坑爹的服务器yum还坏了,悲催. 服务器系统:centos5.3 64位 gearman版本:1.1.8 安装包(相关依赖)下载 1.gearman安装包 ...

  4. gearman 安装

    yum install gperfyum install libevent-develyum install libuuid-develwget https://launchpad.net/gearm ...

  5. Gearman 安装使用教程

    Gearman是一个分发任务的程序框架,可以用在各种场合,Gearman更偏向于任务分发功能.它的任务分布非常简单,简单得可以只需要用脚本即可完成. Gearman 分布式任务实现原理上只用到2个字段 ...

  6. gearman安装问题总结

    解决configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers. yum ...

  7. Centos7安装gearman和php扩展

    Centos7安装gearman和php扩展 标签(空格分隔): php,linux gearman所需要的依赖 yum install \ vim \ git \ gcc \ gcc-c++ \ w ...

  8. gearman mysql udf

    gearman安装 apt-get install gearman gearman-server libgearman-dev 配置bindip /etc/defalut/gearman-job-se ...

  9. Gearman + Nodejs + MySQL UDF异步实现 MySQL 到 Redis 的数据同步

    [TOC] 1, 环境 CentOS, MySQL, Redis, Nodejs 2, Redis简介 Redis是一个开源的K-V内存数据库,它的key可以是string/set/hash/list ...

随机推荐

  1. Oracle 11gR2 RAC 常用维护操作 说明

    一.启动和停止集群 在Oracle 11gR2 下的RAC,架构发生了变化.CRS的信息也是放在ASM 实例里的,所以要关asm,必须关闭crs, 如果还使用了acfs的话,一关crs那么acfs里的 ...

  2. ES6之6种遍历对象属性的方法

    ES6之6种遍历对象属性的方法 for ... in 循环遍历对象自身的和继承的可枚举属性(不含Symbol属性). Obejct.keys(obj),返回一个数组,包括对象自身的(不含继承的)所有可 ...

  3. 高大上的JS工具

    EtherPad (协同文件编辑): EtherCalc (协同电子表格编辑)

  4. Zigbee 的 mesh功能设置

    1. 在编译选项中加入ZIGBEEPRO 最大的节点深度为20,网络模式为mesh网络 如果不配置,则为HOME_CONTROLS,支持5级路由深度,每个路由器最多可连接20个节点(最多包括6个路由器 ...

  5. Django安装与介绍

    安装 Django是以Python为语言环境的,所以要先确保计算机上已经安装了Python. Linux ubuntu: sudo pip install Django==1.11.7 安装中指定了版 ...

  6. 操作系统-移动操作系统-百科: iOS(苹果公司的移动操作系统)

    ylbtech-操作系统-移动操作系统-百科: iOS(苹果公司的移动操作系统) iOS是由苹果公司开发的移动操作系统.苹果公司最早于2007年1月9日的Macworld大会上公布这个系统,最初是设计 ...

  7. GC 提前晋升

    如果Survivor 空间不足, 那么从 Eden 存活下来的和原来在 Survivor 空间中不够老的对象占满 Survivor 后, 就会提升到老年代, 可以看到这一轮 Minor GC 后老年代 ...

  8. Python 天气预报+微信

    """ Description: 需要提供以下三个信息,在申请到的微信企业号当中可以找到 agentid corpid corpsecret Author:Nod Dat ...

  9. Linux下的压缩(zip)解压(unzip)缩命令

      .zip命令 zip -r myfile.zip ./* 将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzip命令 unzip -o ...

  10. java UTC时间和local时间相互转换

    java UTC时间和local时间相互转换 1.local时间转UTC时间 /** * local时间转换成UTC时间 * @param localTime * @return */ public ...