• gearman的安装和配置


    gearman作为并发任务管理服务,已经越来越多攻城狮在生产环境中使用了。为了日后方便部署到服务器,我写了一个shell。

    一般服务器使用稳定的centos,我使用的是centos6.7.

    安装shell如下:

    #!/bin/bash

    # 安装相关依赖
    yum install uuid-devel libuuid libuuid-devel uuid
    boost-devel libevent libevent-devel boost boost-devel
    gcc-c++ mysql-libs mysql libmemcached-devel libmemcached
    make curl libcurl-devel mysql-devel gperf

    cd /usr/local/src

    # 安装gearmand服务
    wget https://launchpad.net/gearmand/1.2/1.1.12/+download/gearmand-1.1.12.tar.gz
    cd gearmand-1.1.12
    ./configure
    make && make install

    #启动Gearman服务端
    /usr/local/sbin/gearmand -d -u root --log-file=/var/loggearmand.log
    # 或用mysql做数据队列

    # 安装gearman php扩展
    wget http://pecl.php.net/get/gearman-1.1.1.tgz
    tar -zxvf gearman-1.1.1.tgz
    cd gearman-1.1.1
    phpize
    ./configure
    make && make install

    # 添加配置到php.ini
    echo 'extension = "/usr/lib64/php/modules/gearman.so"' >> /etc/php.ini

    #检查组件是否安装成功


    php -m | grep gearman

    如果出现gearman该扩展,则说明安装成功。

    补充一下:我在ubuntu上安装gearman php扩展时遇到无法加载gearman扩展的情况.报错如下:

    PHP Warning: PHP Startup: gearman: Unable to initialize module

    Module compiled with module API=20121212

    PHP compiled with module API=20131226 These options need to match

    bing了一下,国外也有人遇到如此情况。如:http://stackoverflow.com/questions/32062680/php-startup-gearman-unable-to-initialize-module

    最后结果是不了了之。国内更多是转载也没有什么解决办法,不过如果是在ubuntu上安装此扩展,不要忘了apt-get方式。

    首先我:

    sudo apt-cache search php5-gearman

    发现有这个扩展。

    然后直接:

    sudo apt-get install -y php5-gearman.

    再次php -m | grep gearman,就可以看到扩展已经载入了。

    Gearman,我们的目标是星辰大海!

  • 相关阅读:
    javascript数组对象
    jquery、javascript实现(get、post两种方式)跨域解决方法
    js检查字符串的包含关系
    element——message消息提示
    js把mysql传过来的时间格式化为:0000-00-00 00:00:00
    beego orm操蛋问题:操作都需要主键
    element——message-box
    VUE.js全局变量的定义
    element el-upload组件获取文件名
    go遍历某个文件夹
  • 原文地址:https://www.cnblogs.com/freephp/p/5266371.html
Copyright © 2020-2023  润新知