一、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.-stable.tar.gz
cd ibevent-2.0.-stable
./configure --prefix=/usr/local/libevent-2.0.-stable
make
make install

3.检查是否安装成功

ls -al /usr/local/libevent-2.0.-stable/lib | grep libevent

4.下载memcached

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

5.安装

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

三、启动

/usr/local/memcached/bin/memcached -d -m 87380m -c  -p  -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  -u root -l 127.0.0.1 -p  -c  -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..tar.gz
cd libmemcached-1.0.
./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..tgz
cd memcached-3.1.
/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功能

[Linux]centos下安装memcached的更多相关文章

  1. NoSql1 在Linux(CentOS)上安装memcached及使用

    前言:       今天是初五,生活基本要从过年的节奏中回归到正常的生活了,所以想想也该想想与工作有关的事情了.我之前在工作中会经常使用memcached和redis,但是自己一直没有时间系统的好好看 ...

  2. Linux(CentOs)下安装Phantomjs + Casperjs

    Linux(CentOs)下安装Phantomjs + Casperjs 是参照cnMiss's Blog http://ju.outofmemory.cn/entry/70691的博客进行安装的 1 ...

  3. linux/centos下安装nginx(rpm安装和源码安装)详细步骤

    Centos下安装nginx rpm包                                                                                 ...

  4. Linux CentOS下安装Tomcat9

    本文讲解在Linux CentOS下安装Tomcat9,以及Web项目的部署发布. 环境:阿里云ECS 云服务器Linux CentOS 使用XShell客户端连接服务器,进行操作实践. 1.下载To ...

  5. [Linux]CentOS下安装和使用tmux

    前天随意点开博客园,看到了一篇关于tmux的文章 Tmux - Linux从业者必备利器,特意还点进去看了.毕竟Linux对于做游戏服务端开发的我来说,太熟悉不过了.不过我就粗略地看了一眼,就关掉了. ...

  6. Linux(CentOS)下安装git

    上个月把VPS迁到budgetVM,终于不用再受digitalOcean的气了,入手很方便,重点是支持支付宝付款——paypal的界面真是不习惯,开通速度挺快的,1G的内存够我折腾一段时间了~,额外送 ...

  7. Linux CentOS下安装、配置mysql数据库

    假设要在Linux上做j2ee开发.首先得搭建好j2ee的开发环境.包含了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有具体解说了Linux学习之CentOS(七)--Cen ...

  8. Linux(CentOS)下安装docker

    Linux(CentOS)安装Docker 查看当前内核版本 [docker@localhost ~]$ uname -r 确保yum包更新到最新 [docker@localhost ~]$ sudo ...

  9. linux/centOS 下安装 ngnix

    Nginx 是一款轻量级的 Web 服务器/反向代理服务器,比较流行,建议在 Linux 下安装运行. Nginx 需要的依赖 它们包括:gcc,openssl,zlib,pcre(可通过rpm -q ...

随机推荐

  1. 【Python3网络爬虫开发实战】 分析Ajax爬取今日头条街拍美图

    前言本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理.作者:haoxuan10 本节中,我们以今日头条为例来尝试通过分析Ajax请求 ...

  2. 理解web服务器和数据库的负载均衡以及反向代理

    这里的“负载均衡”是指在网站建设中应该考虑的“负载均衡”.假设我们要搭建一个网站:aaa.me,我们使用的web服务器每秒能处理100条请求,而aaa.me这个网站最火的时候也只是每秒99条请求,那么 ...

  3. postman高级应用

    目录 提取接口返回值 设置动态参数 流程控制 调试 定义公共函数 外部数据文件 提取接口返回值 1.获取响应的header值 var Content-Type=postman.getResponseH ...

  4. Spring Bean Scope (作用域)

    singleton: 单例模式,针对每个spring容器,只有一个该类的实例被管理,每次调用此实例都是同一个对象被返回,所以适用于无状态bean.默认情况下,singleton作为spring容器中b ...

  5. C语言每日一练——第1题

    一.程序功能 程序的功能是:将大于整数m且紧靠m的k个素数存入数组xx.并把in.dat文件的内容输入到程序,并把输出结果输出道out.dat文件夹中例如:若输入17,5 则应该输入:19,23,29 ...

  6. CCF-CSP题解 201809-3 元素选择器

    题目要求写一个简易的CSS Selector. 首先用结构体\(<lev,label[],hasId,id[]>\)存储元素.其中\(lev\)表示元素在html树中的深度(这个是因为逻辑 ...

  7. 学习Python编程技术的流程与步骤,自学与参加培训学习都适用

     一.清楚学习目标 无论是学习什么知识,都要有一个对学习目标的清楚认识.只有这样才能朝着目标持续前进,少走弯路,从学习中得到不断的提升,享受python学习计划的过程. 虽然目前的编程语言有很多,但是 ...

  8. LImax服务器框架学习--安装、使用ant工具、生成limax相关代码

    一.安装ant ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发.在实际软件开发中,有很多地方可以用到ant. 首先现在一个ant安装压缩包, ...

  9. ps命令输出进程状态S后面加号的含义

    最近发现一个问题,ps命令输出里面进程状态为S+的含义,网上好多文章都说是表明进程“位于在后台进程组”. 例如下面这个ps命令输出说明: D 不可中断 Uninterruptible sleep (u ...

  10. C# HttpClient以multipart/form-data形式 提交文件和其它参数

    调用文件接口,需要一个上传文件和一个Region参数,参考调用实例 public async Task<WebApiResult> UploadFile(UploadFileModel i ...