linux memcache 客户端,memcache使用

1. Memcache安装

1268b65ae4e6

11.png

1268b65ae4e6

12.png

1268b65ae4e6

13.png

检验memcached是否下载完,可以在[控制面板]->[管理工具]->[服务]中查看到memcached服务

终端输入 Stats,显示如下:

1268b65ae4e6

![15.png](http://upload-images.jianshu.io/upload_images/2648722-e5ed41c06a0f2d44.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

输入:quit退出

memcache 管理:

1268b65ae4e6

16.png

1268b65ae4e6

17.png

linux常用组合来修改相关配置(在windows下可能不能用):

1268b65ae4e6

18.png

基本的memcached客户端命令

1268b65ae4e6

19.png

1268b65ae4e6

20.png

简单把设置的值遍历出来

1268b65ae4e6

21.png

memcache php扩展模块安装

1268b65ae4e6

22.png

1268b65ae4e6

23.png

windows点击下载

将扩展文件放到对应版本php的模块文件(ext)中

打开php.ini配置文件,将extension=memcache.dll前的分号去掉,重启apache就可以了

memcache在php中的使用

//创建memcache对象

$mem=new Memcache;

//连接memcache服务器

$mem->connect('localhost',11211);

//操作

//add添加

class test{

public $a=1;

public $b=2;

public $c=3;

}

$mem->add('one','this is memcache test!',

MEMCACHE_COMPRESSED,time()+60*60*24*31);

$mem->add('two',array("111","222","333"),MEMCACHE_COMPRESSED,time()+60*60*24*31);

$mem->add('three',new test(),MEMCACHE_COMPRESSED,time()+60*60*24*31);

//修改操作

//把上面add换成set,没有键值则是添加

$mem->set('one','this is set!',

MEMCACHE_COMPRESSED,time()+60*60*24*31);

//取值get

$mem->get('one');

var_dump($mem->get('three'));

//删除delete

$mem->delete('one');

//清除所有

$mem->flush();

//关闭memcache连接

$mem->close();

利用memcache进行数据库数据缓存

//创建memcache对象

$mem= new Memcache;

//连接memcache服务器

$mem->connect('localhost',11211);

//数据库的连接和操作

/*

*判断如果内存中有数据直接取出,没有的话从数据库中查询;

*/

$sql="select id,name,age from test order by id";

//设置键为md5($sql),这样服务器每次使用同样的sql语句就会走内存

$key=MD5($sql);

//直接从内存memcache要数据

$data=$mem->get($key);

//判断

if(empty($data)){

try{

$pdo= new PDO('mysql:host=localhost;dbname=test','root','910420');

}catch(PDOException $e){

echo "数据库连接失败:".$e->getMessage();

}

//获取数据,执行语句

$stmt=$pdo->prepare($sql);

$stmt->execute();

//获取所有数据

$data=$stmt->fetchAll(PDO::FETCH_ASSOC);

//把数据插入到memcache内存中

$mem->set($key,$data,MEMCACHE_COMPRESSED,5);

var_dump($data);

}

//关闭数据库

$mem->close();

设置分布式的memcache存取

分布式的存取只需要把上述代码的连接connect换成多台服务器就可以了,连接代码如下:

$mem->addServer('192.168.1.137',11211);

1268b65ae4e6

24.png

memcache处理会话信息

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值