memcache是高性能,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。目前用memcache解决互联网上的大用户读取是非常流行的一种用法。

下载安装

前提要先安装libevent软件官方(http://monkey.org/~provos/libevent/

其次安装memcache官方(http://memcached.org/

memcached服务端安装

  1. tar zvxf memcached-1.4.5.tar.gz
    cd memcached-1.4.5
    ./configure --with-libevent=/usr/local/lib
    make && make install
    默认安装,如果libevent指定--prefix安装到其它路么,那么这里相应路径也需更改.

启动:/usr/local/bin/memcached  -d  -m 512  -p  11211 -u root

1.yum -y install libevent,yum源不能用的下载tar包编译安装。

2.动态添加php扩展memcache。

tar zxvf memcache-3.0.2.tgz

cd memcache-3.0.2
/usr/local/webserver/php-5.2.4/bin/phpize
./configure --with-php-config=/usr/local/webserver/php-5.2.4/bin/php-config --with-zlib-dir=/usr/local/zlib --enable-memcache ###zlib是一个很好的压缩解压缩库 make && make install 开启php的配置文件中memcache的模块。 sed -i 's#extension_dir = "./"#extension_dir = "/usr/local/webserver/php-5.2.4/lib/php/extensions/no-debug-non-zts-20060613/"\n\nextension = "memcache.so"\n#' /usr/local/webserver/php-5.2.4/lib/php.ini
sed -i 's#expose_php = On#expose_php = Off#' /usr/local/webserver/php-5.2.4/lib/php.ini
sed -i 's#session.name = PHPSESSID#session.name = CWSSESSID#' /usr/local/webserver/php-5.2.4/lib/php.ini

3.制作启动脚本

#! /bin/sh
. /etc/rc.d/init.d/functions
PORT=11211
USER=root
MAXCONN=1024
CACHESIZE=64
OPTIONS=""
if [ -f /etc/sysconfig/memcached ];then
. /etc/sysconfig/memcached
fi
# Check that networking is up.
if [ "$NETWORKING" = "no" ]
then
exit 0
fi RETVAL=0 start () {
echo "Starting memcached ..."
# insure that /var/run/memcached has proper permissions
chown $USER /usr/local/memcached/bin/memcached
/usr/local/memcached/bin/memcached -d -p $PORT -u $USER -m $CACHESIZE -c $MAXCONN -P /var/run/memcached.pid $OPTIONS
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/memcached
}
stop () {
echo "Stopping memcached ..."
killproc memcached
RETVAL=$?
echo
if [ $RETVAL -eq 0 ] ; then
rm -f /var/lock/subsys/memcached
rm -f /var/run/memcached.pid
fi
} restart () {
stop
start
} # See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status memcached
;;
restart|reload)
restart
;;
condrestart)
[ -f /var/lock/subsys/memcached ] && restart || :
;;
*)
echo $"Usage: $0 {start|stop|status|restart|reload|condrestart}"
exit 1
esac exit $?

4.telnet 127.0.0.1 11211连接 输入stats可查看实例的当前统计数据。 stats
STAT pid 2722            进程ID
STAT uptime 1307349              服务器运行秒数
STAT time 1500356291            服务器当前unix时间戳
STAT version 1.2.4              版本
STAT pointer_size 64             操作系统字大小(这台服务器是64位的)
STAT rusage_user 0.100984         进程累计用户时间
STAT rusage_system 0.442932         进程累计系统时间
STAT curr_items 148             item个数
STAT total_items 320             item总数
STAT bytes 8536782             存储item字节数
STAT curr_connections 1            当前打开连接数
STAT total_connections 1840          曾打开的连接总数
STAT connection_structures 4         服务器分配的连接结构数
STAT cmd_get 3192              执行get命令总数
STAT cmd_set 320              执行set命令总数
STAT get_hits 2998              get命中次数
STAT get_misses 194             get未命中次数
STAT evictions 0               为获取空间删除item的总数
STAT bytes_read 8839037           读取字节总数
STAT bytes_written 93695180         写入字节总数
STAT limit_maxbytes 134217728        分配的内存数(字节)
STAT threads 4                线程数 可修改memcache默认参数 PORT="11211"
USER="nobody"
MAXCONN="1024"
CACHESIZE="128"  #根据服务器内存调整
OPTIONS="" 5.memcached参数详解 -d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,这里是200MB
-u是运行Memcache的用户,如果当前为 root 的话,需要使用此参数指定用户。
-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址192.168.1.91
-p是设置Memcache监听的端口,我这里设置了12301,最好是1024以上的端口
-c选项是最大运行的并发连接数,默认是1024,这里设置了256
-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid 6.两种方法清空memcache缓存 (1).telnet localhost 11211
flush_all (2).重启服务。

memcache缓存安装配置的更多相关文章

  1. php扩展memcached和memcache的安装配置方法:转载

    本文转载:http://www.jb51.net/article/56999.htm php连接memcached缓存服务器的客户端有两个,一个是memcache是比较底层的开发库,memcached ...

  2. Linux系统下Redis缓存安装配置

    Redis是一个高性能的key-value数据库,现时越来越多企业与应用使用Redis作为缓存服务器.楼主是一枚JAVA后端程序员,也算是半个运维工程师了.在Linux服务器上搭建Redis,怎么可以 ...

  3. MemCache服务安装配置及windows下修改端口号

    简述:memcached 开源的分布式缓存数据系统.高性能的NOSQL Linux 一.环境配置与安装 01.编译准备环境 yum install -y gcc make cmake autoconf ...

  4. Windows下MemCache多端口安装配置

    Windows下MemCache环境安装配置的文章很多,但大部分都是用的默认端口11211,如何修改默认端口.如何在一台服务器上配置多个MemCache端口?这正式本文要解决的问题. 1.从微软官网下 ...

  5. phalcon: 缓存片段,文件缓存,memcache缓存

    几种缓存,需要用到前端配置,加后端实例配合着用 片段缓存: public function indexAction() { //渲染页面 $this->view->setTemplateA ...

  6. gitlab一键安装+配置(备份+LADP认证)

    gitlab一键安装+配置(备份+LADP认证) #gitlab一键安装 #centos6 mini, GitLab社区版 #参考官方最新文档 https://www.gitlab.com.cn/in ...

  7. php5.4之分布式缓存memcache(windows7下安装配置)

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/qq1355541448/article/details/36663203 使用理由:就是为了频繁查询 ...

  8. nginx安装配置+清缓存模块安装

    经过一段时间的使用,发现nginx在并发与负载能力方面确实优于apache,现在已经将大部分站点从apache转到了nginx了.以下是nginx的一些简单的安装配置. 环境 操作系统:CentOS. ...

  9. php无法加载Memcache缓存模块问题及Memcache的安装

    今天早上去迁移网站发现打开网站报错 然后我去phpinfo.php看了一下,果然我的测试页里面有加载到Memcache这个模块,如下图: 这时候,既然发现了问题的所在我们就要去排查问题,当前这个问题呢 ...

随机推荐

  1. WEB前端:浏览器(IE+Chrome+Firefox)常见兼容问题处理--02

    兼容问题目录 8.IE6不支持固定定位 9.IE6下前面元素浮动,后面元素不浮动后他们之间会有间隙 10.IE6下双边距问题 11.IE67下父级有边框,子级有margin的话会不起作用 12.IE6 ...

  2. 史上最完整Hadoop2.x完全分布式安装部署-小白也能学会

    一.环境要求: 1.        虚拟机安装并设置网络: 2.        修改主机地址映射: 3.        必备软件:Jdk.Development Tools   Development ...

  3. angular自定义验证 ngModel的一些理解

    每次使用自定义校验都不记得具体详情,故而记录之 1.数据流向 初始化 -->$formatters -->modelValue-->用户操作-->viewValue--> ...

  4. JavaScript设计模式_03_代理模式

    代理模式是非常常见的模式,比如我们使用的VPN工具,明星的经纪人,都是代理模式的例子.但是,有人会疑问,明明可以直接访问对象,为什么中间还要加一个壳呢?这也就说到了代理模式的好处.在我看来,代理模式最 ...

  5. linux 系统备份日志

    题目: 备份日志 小明是一个服务器管理员,他需要每天备份论坛数据(这里我们用日志替代),备份当天的日志并删除之前的日志.而且备份之后文件名是年-月-日的格式.alternatives.log在/var ...

  6. git初步用法

    三.       Gerrit的注册及使用 1.         简介 Gerrit为代码审核工具,git提交的代码,必须经过审核才能合入到正式的版本库中. 2.         注册步骤 (1)   ...

  7. JS监听div的resize事件

    原文地址:http://zhangyiheng.com/blog/articles/div_resize.html 需求 开发过程中经常遇到的一个问题就是如何监听一个div的size变化. 比如我用c ...

  8. Jenkins插件开发

    一.环境配置 不赘述,直接看wiki:https://wiki.jenkins.io/display/JENKINS/Extend+Jenkins 二.内容说明 1.插件代码结构 src/main/j ...

  9. js数值使用及数组转json,转化后的json传入后台解析

    var storeArray=new Array(); $("input[name='storeid']").each(function(i){ var curStoreObj = ...

  10. 使用Iterator的方式也可以顺利删除和遍历

    使用Iterator的方式也可以顺利删除和遍历 eg: public void iteratorRemove() { List<Student> students = this.getSt ...