博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
网站提速-缓存技术(4)
阅读量:5881 次
发布时间:2019-06-19

本文共 1926 字,大约阅读时间需要 6 分钟。

 

memcached基本概念

Memcacheddanga的一个项目,最早是为LiveJournal 服务的,最初为了加速 LiveJournal 访问速度而开发的,后来被很多大型的网站采用。 官方网站: www.danga.com  memcached.org

Memcached是一个高性能的分布式的内存对象缓存系统,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度。

Memcached--原理示意图

简单的说: memcached就是在内存

中维护一张巨大的hash,通过自己

的一套算法来维护数据的操作,这个

算法比较复杂,我们重点掌握如何在项目如何使Memcached技术. Memcached-安装 

安装步骤

①下载memcached软件

②将memcached软件拷贝到某个目录,最好放在php开发环境目录下,

便于管理

③cmd命令下执行,安装  memcached d install [卸载使用 memcached -d uninstall]

memcached d start ,启动 memcached 服务

⑤查看memcached 服务是否启动成功! 默认端口11211

Win7系统要注意我们要进入c\windows\system32,然后以管理员运行cmd.exe程序。

Linuxmemcache安装

Linux下是基于libevent事件,必须先按它

安装libevent

                  ./configure –with-libevent=/usr

                  Make && make install

安装memcached

                  ./configure –with-libevent=/usr

                  Make && make install

启动Memcahced –d –m 128 –l 192.168.1.111 –p 11211 –u root

-m只内存,-l指允许的主机,-p端口,-u用户

停止: kill `cat /tmp/memcached.pid`;Killall  memcached 

telnet操作Memcached

Telnet可以操作memcache,不过win7以上版本默认没安装它,要到程序管理里面安装它。

Telnet localhost 11211  // 登陆memcache

Stats 查看状态,查看命中率96次命中

 

 

saisai字段名增加一个值,字段位从1开始,时间1000秒,长度为10字节.

Set 可以用来更新字段,get来读取字段

Append追加字段,preppend前追加字段

Incr name number增加字段的值,decr name number减少字段的值,quit用来退出telnet连接

 

 

安装并配置Memcache扩展库

php.ini文件添加:

extension=php_memcache.dll

 

并把对应的php_memcache.dll文件拷贝到 php/ext目录下

测试一下php环境

 

              测试:

              <?php

              $mem = new Memcache; 

              $mem->connect(127.0.0.1, 11211); 

              // $mem->addserver(lamp,11211);

              // $mem->addserver(192.168.12.1,11211);   //开启多个

              $mem->set(test, Hello world!, 0, 12); 

              $val = $mem->get(test); 

              echo $val; 

              ?>

Memcache缓存数组和类:

$mem->add("myarr",array("aaa","bbb","ccc"));

print_r($mem->get("myarr"));

echo '<br>';

class  person{

  var $name="zhangsan";

  var $age=10;

  }

 $mem->add("myobj",new person);

 var_dump($mem->get("myobj"));

 $mem->close();

 

查看Memcache状态

echo $mem->getVersion();

 echo '<pre>';

 print_r($mem->getStats());

 echo '</pre>';

  $mem->close();  

 

 

 

 

 

 

 

 

 

 

 

转载地址:http://plsix.baihongyu.com/

你可能感兴趣的文章
DatanodeDescriptor说明
查看>>
ServlertContext
查看>>
eclipse编辑器生命周期事件监听
查看>>
Python WOL/WakeOnLan/网络唤醒数据包发送工具
查看>>
sizeof(long)
查看>>
pxe网络启动和GHOST网克
查看>>
2.5-saltstack配置apache
查看>>
django数据库中的时间格式与页面渲染出来的时间格式不一致的处理
查看>>
Python学习笔记
查看>>
java String
查看>>
renhook的使用
查看>>
Linux学习笔记(十二)--命令学习(用户创建、删除等)
查看>>
DOCKER windows 7 详细安装教程
查看>>
养眼美女绿色壁纸
查看>>
U盘启动盘制作工具箱 v1.0
查看>>
增强myEclipse的提示功能
查看>>
Zabbix汉化方法
查看>>
Java I/O系统基础知识
查看>>
Java多线程设计模式(2)生产者与消费者模式
查看>>
对象并不一定都是在堆上分配内存的
查看>>