安装 在windows上安装
略(都玩到缓存的程度了,就没必要在windows上捣弄了)
给个参考: http://blog.csdn.net/yuhui_fish/article/details/7762299
memcached 依赖于 libevent 库,因此我们需要先安装 libevent.
分别到 libevent.org 和 memcached.org 下载最新的 stable 版本(稳定版).
先编译 libevent ,再编译 memcached,编译 memcached 时要指定 libevent 的路径.
yum install gcc make cmake autoconf libtool # 准备编译环境 tar zxvf libevent-2.0.21-stable.tar.gz cd libevent-2.0.21-stable ./configure --prefix=/usr/local/libevent make && make install tar zxvf memcached-1.4.5.tag.gz cd memcached-1.4.5 ./configure--prefix=/usr/local/memcached --with-libevent=/usr/local/libevent make && make install
注意: 在虚拟机下练习编译,一个容易碰到的问题---虚拟机的时间不对,
导致的 gcc 编译过程中,检测时间通不过,一直处于编译过程.
解决:
# date -s "yyyy-mm-dd hh:mm:ss" # clock -w # 把时间写入 cmos命令行使用 启动服务
/usr/local/memcached/bin/memcached -m 64 -p 11211 -u nobody -vv # 把-vv换成-d就变成后台运行 # -m 指定默认内存为64Mmemcached的基本命令(安装、卸载、启动、配置相关)
-p 监听的端口 -l 连接的IP地址, 默认是本机 -d start 启动memcached服务 -d restart 重起memcached服务 -d stop|shutdown 关闭正在运行的memcached服务 -d install 安装memcached服务 -d uninstall 卸载memcached服务 -u 以的身份运行 (仅在以root运行的时候有效) -m 最大内存使用,单位MB。默认64MB -M 内存耗尽时返回错误,而不是删除项 -c 最大同时连接数,默认是1024 -f 块大小增长因子,默认是1.25 -n 最小分配空间,key+value+flags默认是48 -h 显示帮助增删改查
没有客户端,通过telnet 127.0.0.1 11211 ctrl + ] display 回车来玩,先设置后存入value;
添加语法: add key flag expire length
实例: add name 0 60 5
add 指令名 添加 key 给值取的一个唯一的名称,如果一个key已经存在,再放入是失败的 flag memcached 基本文本协议,传输的东西是理解成字符串来存储.也就是说不管你往里面存入什么数据,最终都是字符串来存储;所以我们一般把数组等数据,序列化以后存入memcache,到取出来的时候,这个flag就决定是否要序列化; expire 有效期 length 缓存的长度(单位为字节)
expire:
设置缓存的有效期,有 3 种格式
设置秒数, 从设定开始数,第 n 秒后失效.
时间戳, 到指定的时间戳后失效.比如在团购网站,缓存的某团到中午 12:00 失效. add key 0 1379209999 6
设为 0. 不自动失效.有种误会,设为 0,永久有效.错误的.
编译 memcached 时,指定一个最长常量,默认是 30 天.所以,即使设为 0,30 天后也会失效.
可能等不到 30 天,就会被新数据挤出去.后续说内存机制的时候会细说
删除delete key [time]
删除指定的 key. 如加可选参数 time,则指删除 key,并在删除 key 后的 time 秒内,不允许get,add,replace 操作此 key.
flush_all [time]
在多少秒内清空~没有time参数的话就马上清空
set name 0 60 5
和add不同,如果name存在就更新,如果不存在就是添加。
replace key flag expire length
必须在key存在的前提下才有更新。
incr/decr key num
incr,decr 命令:增加/减少值的大小
incr,decr 操作是把值理解为 32 位无符号来+-操作的. 值在[0-2^32-1]范围内,也就是说dec怎么减少都不会少于0;
append key 0 60 15
memcache存储的是字符串,append就是追加新字符串到已存储的KEY上
prepend key 0 60 15
在已有的key上加上新的value;
get key1 key2
获取key的值,注意不支持get key*的方式
key | descrption |
---|---|
pid | memcache服务器的进程ID |
uptime | 服务器已经运行的秒数 |
time | 服务器当前的unix时间戳 |
version | memcache版本 |
pointer_size | 当前操作系统的指针大小(32位系统一般是32bit) |
rusage_user | 进程的累计用户时间 |
rusage_system | 进程的累计系统时间 |
curr_items | 服务器当前存储的items数量 |
total_items | 从服务器启动以后存储的items总数量 |
bytes | 当前服务器存储items占用的字节数 |
curr_connections | 当前打开着的连接数 |
total_connections | 从服务器启动以后曾经打开过的连接数 |
connection_structures | 服务器分配的连接构造数 |
cmd_get | get命令(获取)总请求次数 |
cmd_set | set命令(保存)总请求次数 |
get_hits | 总命中次数 |
get_misses | 总未命中次数 |
evictions | 为获取空闲内存而删除的items数(分配给memcache的空间用满后需要删除旧的items来得到空间分配给新的items) |
bytes_read | 总读取字节数(请求字节数) |
bytes_written | 总发送字节数(结果字节数) |
limit_maxbytes | 分配给memcache的内存大小(字节) |
threads | 当前线程数 |
功能灵活性相对redis要弱很多...
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/61688.html
安装PHP-memcache扩展和安装其他PHP扩展的步骤是一样的。 安装 step 1:搜索下载扩展 http://pecl.php.net/package/memcache step 2: gzip -d memcache-2.2.6.tgz tar xvf memcache-2.2.6.tar cd memcache-2.2.6 /usr/local/php/bin/phpize #可以先l...
摘要:五数据使用来存储的效率是最高的。通过以上的策略数据库的压力将会被大大减轻。后续本专题也会讨论一下的分布式算法提高其命中率应用场景二秒杀功能。其实,本场景严格的说应该也属于场景一,单独拎出来说是由于其广泛的应用性。 简介 Memcached是一个高性能的分布式的内存对象缓存系统,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力,通过在内存里维护一个统一的巨大的h...
摘要:以下正文的部分内容来自程序员面试笔试宝典书籍,如果转载请保留出处一什么是是一个开源免费高性能的分布式对象缓存系统,它基于一个存储键值对的来存储数据到内存中。预告面试常考内容之和将于本周三更新。 你好,是我琉忆。继上周(2019.2-11至2-15)发布的PHP面试常考内容之面向对象专题后,发布的第二个专题,感谢你的阅读。本周(2019.2-18至2-22)的文章内容点为以下几点,更新时...
摘要:以下正文的部分内容来自程序员面试笔试宝典书籍,如果转载请保留出处一什么是是一个开源免费高性能的分布式对象缓存系统,它基于一个存储键值对的来存储数据到内存中。预告面试常考内容之和将于本周三更新。 你好,是我琉忆。继上周(2019.2-11至2-15)发布的PHP面试常考内容之面向对象专题后,发布的第二个专题,感谢你的阅读。本周(2019.2-18至2-22)的文章内容点为以下几点,更新时...
摘要:哈希的结果应能够保证原有已分配的内容可以被映射到新的缓冲中去,而不会被映射到旧的缓冲集合中的其他缓冲区。平衡性平衡性是指哈希的结果能够尽可能分布到所有的缓冲中去,这样可以使得所有的缓冲空间都得到利用。 memcached分布式原理与实现 标签(空格分隔): nosql 0x01 概况 1.1 什么是memcached memcached是一个分布式,开源的数据存储引擎。memcach...
阅读 1979·2021-11-12 10:36
阅读 1821·2021-11-09 09:49
阅读 2573·2021-11-04 16:12
阅读 1129·2021-10-09 09:57
阅读 3215·2019-08-29 17:24
阅读 1892·2019-08-29 15:12
阅读 1250·2019-08-29 14:07
阅读 1233·2019-08-29 12:53