您的位置:首页 > 数据库 > Memcache

CentOS6.5安装Memcached1.4.25及配置

2016-12-22 13:58 393 查看
转自:
http://www.linuxidc.com/Linux/2015-05/117170.htm  :CentOS安装Memcached及配置PHP的Memcache扩展
http://www.tuicool.com/articles/qYJBVb :Centos6.5下安装Memcached完整示例

-------------------------------------------分割线----------------------------------------


一 下载需要的源码包

所有安装包均选用最新的。 

1. 下载libevent2.0.22

下载地址:http://libevent.org/ 

如图: 



下载memcached1.4.24

下载地址:http://memcached.org/ 

如图: 



下载php扩展memcache3.0.8

下载地址:http://pecl.php.net/package/memcache 

如图: 




二 安装详细步骤

首先将以上三个软件包下载到/tmp目录下 

1. 安装libevent
cd /tmp  #首先进入到该下载包的目录
tar zxvf libevent-2.0.22-stable.tar.gz #解压包
cd libevent-2.0.22-stable #进入到解压的目录
./configure --prefix=/usr/local #编译前配置,生成Makefile文件,路径可自行更改
make; make install #编译+安装

1

测试是否安装成功 



2. 安装memcached
cd /tmp  #首先进入到该下载包的目录
tar zxvf memcached-1.4.24.tar.gz #解压包
cd memcached-1.4.24 #进入到解压的目录
./configure –with-libevent=/usr/local #编译前配置,生成Makefile文件,路径必须与libevent中一致
make; make install #编译+安装

1

测试是否安装成功 



然后执行命令启动memcached 
#/usr/local/bin/memcached -d -m 1024 -u root -p 11211 -P
/tmp/memcached.pid

然后就可以使用telnet,来测试memcache的连接状态, 

telnet
127.0.0.1 11211 

输入stats,会输出memcache的一些连接信息,包括PID 

如果需要退出,则执行quit命令即可,截图如下: 



退出telnet,执行quit命令即可,上图所示的memcached进程ID,很重要,如果我们需要关闭memcached服务时,就可以执行命令,kill
-9 进程号 即可。 
最后,我们在来看下如何使用JAVA API,简单的来测试下memcached,注意如果memcached的端口号,需要对外开放,否则,将会出现连接不上的异常,测试环境我们可以把防火墙关闭测试: 

用到的jar包,如下所示: 



测试,程序核心代码和运行结果如下: 

package com.test.client;

import java.net.InetSocketAddress;

import net.spy.memcached.MemcachedClient;
/**
* @author qindongliang
*
* JAVA流行技术交流群: 324714439
* 测试memcached客户端连接
*
* **/
public class TestClient {

public static void main(String[] args) throws Exception{

MemcachedClient client=new MemcachedClient(new InetSocketAddress("192.168.75.130", 11211));
//60是超时数,默认以秒为单位
client.set("test", 60, "1111测试memcache成功了吧");

System.out.println(client.get("test"));
client.shutdown();//关闭连接

}

}

控制台打印内容如下所示: 
2014-03-18 18:13:30.008 INFO net.spy.memcached.MemcachedConnection:  Added {QA sa=/192.168.75.130:11211, #Rops=0, #Wops=0, #iq=0, topRop=null, topWop=null, toWrite=0, interested=0} to connect queue
2014-03-18 18:13:30.011 INFO net.spy.memcached.MemcachedConnection:  Connection state changed for sun.nio.ch.SelectionKeyImpl@33c3e6
1111测试memcache成功了吧
2014-03-18 18:13:30.020 INFO net.spy.memcached.MemcachedClient:  Shut down memcached client

至此,我们已经安装测试成功了,最后散仙把memcached的JAVA API所用到的jar上传上来,方便大家测试。 

其中命令解析如下:

关于memcache启动的一些参数说明: 
memcached命令参数解释: 
-p <num>          监听的端口 
-l <ip_addr>      连接的IP地址, 默认是本机 
-d start          启动memcached 服务 
-d restart        重起memcached 服务 
-d stop|shutdown  关闭正在运行的memcached 服务 
-d install        安装memcached 服务 
-d uninstall      卸载memcached 服务 
-u <username>     以<username>的身份运行 (仅在以root运行的时候有效) 
-m <num>          最大内存使用,单位MB。默认64MB 
-M                内存耗尽时返回错误,而不是删除项 
-c <num>          最大同时连接数,默认是1024 
-f <factor>       块大小增长因子,默认是1.25 
-n <bytes>        最小分配空间,key+value+flags默认是48 
-h                显示帮助 

-------------------------------------------------------------------
-d选项是启动一个守护进程, 
-m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB, 
-u是运行Memcache的用户,我这里是root, 
-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址127.0.0.1, 
-p是设置Memcache监听的端口,我这里设置了11211,最好是1024以上的端口, 
-c选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定, 
-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid 
2. 结束memcached进行 
kill 
cat
/tmp/memcached.pid
 
3. 检查memcached是否已经启动 





-----------------------------------------------------------------------分割线-----------------------------------------------------

如果没有安装telnet服务,可以执行 

yum install telnet-server 

安装服务 

yum install telnet 

安装命令 

然后编辑vi /etc/xinetd.d/telnet 文件,激活telnet,默认是禁用的,截图如下: 



然后重启服务,执行命令 service xinetd restart 

------------------------------------------------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: