zoukankan      html  css  js  c++  java
  • [Linux]centos下安装memcached

    一、yum安装

    1、Linux系统安装memcached,首先要先安装libevent库。

    yum install libevent libevent-devel

    2、安装memcached

    yum install memcached

    二、手动安装

    1.下载libevent库。

    wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz

    2.安装

    tar -zxvf libevent-2.0.21-stable.tar.gz
    cd ibevent-2.0.21-stable
    ./configure --prefix=/usr/local/libevent-2.0.21-stable
    make
    make install

    3.检查是否安装成功

    ls -al /usr/local/libevent-2.0.21-stable/lib | grep libevent

    4.下载memcached

    wget http://memcached.org/files/memcached-1.5.9.tar.gz

    5.安装

    tar -zxvf memcached-1.5.9.tar.gz
    cd memcached-1.5.9
    ./configure -with-libevent=/usr/local/libevent-2.0.21-stable/ --prefix=/usr/local/memcached-1.5.9
    make
    make install

    三、启动

    /usr/local/memcached/bin/memcached -d -m 87380m -c 5120 -p 11211 -u root

    四、配置项

    -d选项是启动一个守护进程,
    -m是分配给Memcache使用的内存数量,单位是MB,这里是10MB,
    -u是运行Memcache的用户,这里是root,
    -l是监听的服务器IP地址,如果有多个地址的话,这里指定了服务器的IP地址192.168.0.200,
    -p是设置Memcache监听的端口,这里设置了12000,最好是1024以上的端口,
    -c选项是最大运行的并发连接数,默认是1024,这里设置了256,按照服务器的负载量来设定,
    -P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid,也可以启动多个守护进程,不过端口不能重复。
    -s以unix域socket方式启动,后接用于FIFO通讯的文件绝对路径,例如:/run/memcached/memcached.sock。

    五、通讯方式

    客户端可以有两种方式与服务进程通信,分别是TCP和unix domain socket.

    1.TCP

    TCP是最常用的一种通讯方式,这种方式可以通过TCP网络连接远方的memcached服务器。

    如果是客户端和服务端处于同一服务器,采用这种通讯方式就会带来而外不必要的传输开销,所以客服同机的情况下,应当采用unix域协议通信。

    2.unix domain socket

    unix domain socket是unix系统中特有的进程间通讯方式(IPC),两个进程通过管道(FIFO)互相通信,相比起TCP的开销更加小,但是只有在客服同机的情况下才能使用。

    开启此方式的方法是让memcached服务进程以创建一个文件的方式,双方进程通过读写此文件进行通信,可以参考第六点的第2条命令。

    所有通过此方式通讯的进程必须注意:
    服务进程需要创建一个文件用于通信,所以服务进程必须具备指明路径下的创建文件的权限。
    客户端进程必须有读写该文件的权限。 

    六、常用命令

    1.启动后保存pid文件

    /usr/bin/memcached -d -m 1024 -u root -l 127.0.0.1 -p 11211 -c 1024 -P /tmp/memcached.pid

           2.用unix域socket方式启动

    /usr/bin/memcached -d -u nginx -s /run/memcached/memcached.sock

     七、在php中使用

    php中自带了两个命名很相似的扩展memcache和memcached.

    这两者的不同之处在于memcache是基于php自身编写的一个memcache客户端,unix和windows都可以找到相应版本。而memcached则是基于一个开源memcached客户端项目libmemcached.它是仅限于unix中的一个项目。

    1.memcache

    此扩展在PHP官方手册里就有详细的安装指南,在PECL中下载该扩展的最新版本。

    2.memcached

    在安装此扩展之前需要安装libmemcached客户端,此后再安装php扩展,在PECL中下载该扩展的最新版本。

    安装libmemcached过程:

    cd /usr/local/src
    wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz
    tar zxvf libmemcached-1.0.18.tar.gz
    cd libmemcached-1.0.18
    ./configure --prefix=/usr/local/libmemcached
    make && make install

            安装memcached扩展过程:

    cd /usr/local/src
    wget http://pecl.php.net/get/memcached-3.1.5.tgz
    tar zxvf memcached-3.1.5.tgz
    cd memcached-3.1.5
    /usr/local/php/bin/phpize --with-php-config=/usr/local/php/bin/php-config
    ./configure --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached --disable-memcached-sasl
    make && make install

    在安装此扩展的过程当中需要注意的是它的配置项:

    配置项 作用
    --with-libmemcached-dir
    指明libmemcached的安装路径
    --disable-memcached-sasl
    带上该配置时禁用sasl功能

     

     

  • 相关阅读:
    SelectionKey理解
    redis3.0.3集群搭建
    Centos6.5环境下安装SVN 整合Apache+SSL
    没有注册类 。已加载,但找不到入口点 DllRegisterServer
    今日立秋
    35+开启忙而有序的日子
    jmeter的常用函数
    jmeter之java请求
    生成Webservice客户端的4种方法
    Pytest高级进阶之Fixture
  • 原文地址:https://www.cnblogs.com/yiyide266/p/11920965.html
Copyright © 2011-2022 走看看