memcache安装

简介:

-----NOSQL数据库

服务端安装


需要先安装libevent

wget http://120.52.73.43/jaist.dl.sourceforge.net/project/levent/release-2.0.22-stable/libevent-2.0.22-stable.tar.gz

tar -zxvf libevent-2.0.22-stable.tar.gz

cd libevent-2.0.22-stable

./configure

make

make install

操作这个步骤,不然启动memcache报错

echo "/usr/local/lib/" > /etc/ld.so.conf.d/libevent.conf

ldconfig -v

安装memcache     memcached-1.4.25.tar.gz //服务端

wget http://www.memcached.org/files/memcached-1.4.25.tar.gz

tar zxvf memcached-1.4.25.tar.gz

cd memcached-1.4.25

./configure

make && make install

 命令  memcached  -h

//memcached   -m  内存   -p   端口  -d  后台启动     -u  root   -c 8192  并发连接数

memcached   -m   16m  -p  11211  -d   -u root -c 8192

memcached   -m   16m  -p  11212  -d   -u root -c 8192  //多实例

netstat -lntup | grep mem

tcp        0      0 0.0.0.0:11211               0.0.0.0:*                   LISTEN      10785/memcached

tcp        0      0 :::11211                    :::*                        LISTEN      10785/memcached

udp        0      0 0.0.0.0:11211               0.0.0.0:*                               10785/memcached

udp        0      0 :::11211                    :::*                                    10785/memcached

命令格式

printf "set key008  0 0 10\r\nhequan1234\r\n" | nc 127.0.0.1  11211

STORED                              //存进去了

printf "get  key008\r\n" | nc 127.0.0.1  11211               //delete

VALUE key008 0 10

hequan1234

END                                   //取出来了

telnet   127.0.0.1   11211


客户端安装

wget  http://pecl.php.net/get/memcache-3.0.8.tgz

tar zxvf memcache-3.0.8.tgz

cd memcache-3.0.8

/application/php/bin/phpize

 ./configure  --enable-memcache   --with-php-config=/application/php/bin/php-config

make

make install

查看目录

ls /application/php5.3.27/lib/php/extensions/no-debug-non-zts-20090626/

memcache.so

加载

vim /application/php/lib/php.ini

extension_dir = "/application/php5.3.27/lib/php/extensions/no-debug-non-zts-20090626/"

extension=memcache.so    //添加一行

重启

/application/nginx/sbin/nginx -t

/application/nginx/sbin/nginx -s reload

pkill php-fpm

/application/php/sbin/php-fpm

可以写一个测试php网页

<?php

    $memcache = new Memcache; //创建一个memcache对象

    $memcache->connect('127.0.0.1', 11211) or die ("Could not connect"); //连接Memcached服务器

    $memcache->set('key001', 'oldboy001'); //设置一个变量到内存中,名称是key001值是oldboy001

    $memcache->set('key002', 'oldboy002'); //设置一个变量到内存中,名称是key002值是oldboy002

    $get_value01 = $memcache->get('key001'); //从内存中取出key001的值

    $get_value02 = $memcache->get('key002'); //从内存中取出key002的值

    echo $get_value02."<br>";

    echo $get_value01;

?>


集群session共享  可以解决多个服务器共用session的难题

session.save_handler = memcache 

session.save_path = "tcp://192/168.10.11:11211"


监控

#!/bin/sh

[ $# -ne 2 ]&&{

 echo "$0 ip port"

 exit

}

export oldboy=key

export wwwServerIp=$1

export wwwServerPort=$2

cmd="nc $wwwServerIp $wwwServerPort"

printf "delete $oldboy\r\n" | $cmd >/dev/null 2>&1

sleep 1

printf "set $oldboy 0 0 6\r\noldboy\r\n"|$cmd >/dev/null 2>&1

if [ `printf "get $oldboy\r\n"|$cmd|grep oldboy|wc -l` -eq 1 ]

  then

      echo "mc is alive."

      exit 0

else

      echo "mc is dead."

      exit 2

fi











本文转自 295631788 51CTO博客,原文链接:http://blog.51cto.com/hequan/1782523,如需转载请自行联系原作者
目录
相关文章
|
运维 负载均衡 网络协议
linux网络管理(链路聚合、桥接网络、故障排查、常用工具)
网卡的链路聚合就是将多块网卡连接起来,当一块网卡损坏,网络依旧可以正常运行,可以有效的防止因为网卡损坏带来的损失,同时也可以提高网络访问速度。
1519 0
linux网络管理(链路聚合、桥接网络、故障排查、常用工具)
|
5月前
|
存储 关系型数据库 MySQL
利用Cron表达式实现MySQL数据库的定时备份
以上就是如何使用Cron表达式和mysqldump命令实现MySQL数据库的定时备份。这种方法的优点是简单易用,而且可以根据需要定制备份的时间和频率。但是,它也有一些限制,例如,它不能备份MySQL服务器的配置文件和用户账户信息,也不能实现增量备份。如果需要更复杂的备份策略,可能需要使用专门的备份工具或服务。
123 15
|
5月前
XMLHttpRequest对象的GET和POST请求使用方法
这两种方式已经足够让你操控数据交流的大厨房,像一个大厨一样熟练跃动。但记住一点,每一位大厨都会依据菜品属性和食客需求选择适合的烹饪方法,GET还是POST,就看您的选择了。
136 10
|
人工智能
在stable diffussion中完美修复AI图片
无论您的提示和模型有多好,一次性获得完美图像的情况很少见。修复小缺陷的不可或缺的方法是图像修复(inpainting)
在stable diffussion中完美修复AI图片
|
7月前
|
存储 缓存 NoSQL
Redis原理—4.核心原理摘要
Redis 是一个基于内存的高性能NoSQL数据库,支持分布式集群和持久化。其网络通信模型采用多路复用监听与文件事件机制,通过单线程串行化处理大量并发请求,确保高效运行。本文主要简单介绍了 Redis 的核心特性。
|
9月前
|
API 索引
鸿蒙开发:实现一个超简单的网格拖拽
实现拖拽,最重要的三个方法就是,打开编辑状态editMode,实现onItemDragStart和onItemDrop,设置拖拽移动动画和交换数据,如果想到开启补位动画,还需要实现supportAnimation方法。
248 13
鸿蒙开发:实现一个超简单的网格拖拽
|
自然语言处理 机器人 Go
【飞书ChatGPT机器人】飞书接入ChatGPT,打造智能问答助手
【飞书ChatGPT机器人】飞书接入ChatGPT,打造智能问答助手
678 0
|
JavaScript 前端开发
Vue中nextTick的作用是什么?如何使用?
Vue中nextTick的作用是什么?如何使用?
206 2
|
消息中间件 缓存 网络协议
TCP协议的秘密武器:流量控制与拥塞控制
本文将深入探讨TCP协议的关键机制,包括流量控制和拥塞控制,以解密其在网络数据传输中的作用。通过了解TCP协议的工作原理,我们可以更好地理解网络通信的稳定性和可靠性,为我们的网络体验提供更安全、高效的保障。无论您是网络爱好者、技术从业者还是普通用户,本文将为您揭开TCP协议的神秘面纱,带您进入网络传输的奇妙世界。
450 0
TCP协议的秘密武器:流量控制与拥塞控制