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 ...
随机推荐
- weexpack 使用
weexpack 的github地址:https://github.com/weexteam/weex-pack weex-toolkit: 初始化的项目是针对开发单个 Weex 页面而设计的,也就是 ...
- yarn 制作 npm 包
yarn publish yarn info [package_name]
- jQuery如何取得HiddenField值(转)
<f:HiddenField runat="server" ID="cat_id" Text="ssss"/> var strD ...
- POJ2411骨牌覆盖——状压dp
题目:http://poj.org/problem?id=2411 状压dp.注意一下代码中标记的地方. #include<iostream> #include<cstdio> ...
- 【python】网络编程-TCP协议套接字
服务器端: #!/usr/bin/env python from socket import * from time import ctime HOST = '' PORT = 21567 BUFSI ...
- JQuery返回Json日期格式的問題
用JQuery Ajax返回一個Entity的Json數據時,如果Entity的屬性中有日期格式,那返回來的是一串字符串,如下圖所示: 在網上找了很久也沒有找到一個好的解決方案,最後自己寫一個java ...
- dedecms问答模块时间显示1970-01-01的解决办法
在使用dedecms的问答模块的时候,很多人希望能在模板上加上问题的时间,一般我们采用这样的dede标签: {dede:ask row=24 titlelen='50' sort='ok'} &l ...
- BASIC-23_蓝桥杯_芯片测试
思路: 1.当测试与被测试的芯片全部可以互相测试时,为好芯片; 示例代码: #include <stdio.h>#define N 20 int main(void){ int n = 0 ...
- Neutron 理解 (2): 使用 Open vSwitch + VLAN 组网 [Neutron Open vSwitch + VLAN Virtual Network]
学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GR ...
- MongoDB对Javascript的支持
在项目中MongoDB的Map-Reduce功能做了许多统计任务,在重构代码的时候修改了_id对象里面的属性字段名称,当用db.collection.update({$rename:{"_i ...