memcache安装与简单介绍
本文参考自菜鸟教程中的内容。
安装
安装memcache的时候,请切换为root用户
root@centos # wget http://www.memcached.org/files/memcached-1.5.9.tar.gz
root@centos # tar -zxf memcached-1.5.9.tar.gz
root@centos # cd memcached-1.5.9
root@centos # ./configure --prefix=/usr/local/memcache
root@centos # make && make install
root@centos # ln -s /usr/local/memcache/bin/memcached /usr/local/sbin/memcached
启动
启动memcache的时候,不能使用root身份,所以请切换为其他用户。
beyond@centos $ memcached -p 11211 -m 64m -d
beyond@centos $ lsof -i:11211
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
memcached 31461 beyond 26u IPv4 10238464 0t0 TCP *:memcache (LISTEN)
memcached 31461 beyond 27u IPv6 10238465 0t0 TCP *:memcache (LISTEN)
-p 表示memcache监听的端口。
-m 表示将本地的多少内存分配给memcache,单位为MB。
-d 表示以守护进程方式运行(后台运行)
-d可以替换为-vv,表示显示memcache的运行状态。
命令
有关参数的说明:flags 存储额外信息,在使用get和gets的时候可以看到;expire 过期时间的单位为秒; bytes_length 要设置的value的长度(字节数)。
set:不管是否设置key对应的值,使用set命令之后,都会重新设置key对应的值。有则更新,无则创建。
set key flags expire bytes_length [noreply]
value
add:如果之前没有设置过key对应的值(或者说已经过期了),那么此时就设置key对应的值;如果之前设置了key对应的值(并且没有过期),那就什么也不做,不会进行更新操作。
add key flags expire bytes_length [noreply]
value
replace:如果设置了key对应的值,并且没有过期的话,那么就更新key对应的值;如果没有设置key对应的值,或者说之前设置了,但是过期了,那么此时并不会重新设置key对应的值,(什么也不做)。
replace key flags expire bytes_length [noreply]
value
append:如果设置了key对应的值,并且没有过期的话,那么可以在key对应的值后面增加内容;如果没有key对应的值,或者过期了,那么就什么也不做。
append key flags expire add_bytes_length [noreply]
value
prepend:和append的规则一样,区别是prepend是在value的前面追加。
prepend key flags exptime bytes [noreply]
value
get:获取memcache中的key对应的信息(可以是一个key列表,使用空格分开)。
get key1 key2 ...
gets:获取memcache中key对应的详细信息,包括cas令牌。
gets key1 key2 ...
delete:删除一个key,使用delete一次只能删一个key。
delete key
incr :如果key存在,并且是32位的整型,那么就将value增加一个decrement,注意必须制定incr。
incr key increment
decr:如果key存在,并且是32位整型数字,那么就将value减少decrement,必须指定decrment。
decr key decrement
flush_all:清空memcache中所有的数据。如果没有指定after的话,就立即清除;如果制定了after,就在after秒之后清空数据。
flush_all [after]
拓展
0、memcache中的数据保存在内存中,断电就会消失,并且存的单个数据项默认是不能大于1MB的,但是可以通过修改源码来实现改变大小。
1、memcache中只能存字符串,也就是说,如果要存数组、对象的话,需要先序列化之后再存。
3、memcache中的数据在过期的时候,并不会立即被清除,而是在下一次访问这个过期数据的时候,才清除这个过期数据。
4、memcache是分布式缓存,但是每个节点之间不会进行相互通信,也就是说,节点之间不会进行同步数据操作,用户需要自己设计算法将数据分配到不同的memcache节点中。
5、memcahce是一个多线程运行的,其中主线程主要监听连接请求,工作线程主要进行处理客户端请求。主线程如果监听到连接请求后,就接受请求,然后将连接分配给工作线程去处理;工作线程接到请求之后,进行处理请求,然后将结果返回给客户端。
6、memcache使用LRU算法来进行数据的删除。
7、memcache没有持久化的概念,即缓存中的数据不会保存到硬盘上,一旦断电,数据真的就丢了。redis有持久化。
8、不支持事务回滚
memcache安装与简单介绍的更多相关文章
- Kali安装zmap简单介绍
zmap是一个非常方便的扫描器,跟nmap和masscan一样,不过区别在于zmap他快,号称是一小时扫遍整个互联网.主要使用方式是TCP SYN scan.TCP connectscan.UDP s ...
- java web(一):tomcat服务器的安装和简单介绍,与eclipse关联
一:下载tomcat安装包和安装 这个百度一下就可以了. 安装完以后进入tomcat的安装路径查看 如图所示:有几个目录简单介绍下 bin目录: 存放运行tomcat服务器的相关命令. conf目 ...
- Postman安装与简单介绍
Postman简介 Postman是一个 Chrome 扩展,能提供强大的 Web API HTTP 请求调试功能.Postman能够发送任何类型的http请求,支持GET/PUT/POST/DELE ...
- postman插件的安装以及简单介绍
1:postman是干什么的? Postman官网上这么介绍的:“Modern software is built on APIs,Postman helps you develop APIs fas ...
- supervisor的安装与简单介绍
1,介绍 Supervisor是一个进程管理工具,官方的说法 用途就是有一个进程需要每时每刻不断的跑,但是这个进程又有可能由于各种原因有可能中断.当进程中断的时候我希望能自动重新启动它,此时,我就需要 ...
- rocksDB 安装问题简单介绍
前一段时间准备测试rocksdb,按照帖子和官网的例子,在安装过程中遇到一些问题.这里给出的是在Ubuntu下安装python使用的版本. 首先,要感谢这些帖子对我的帮助: 1:http://tech ...
- percona-toolkit的安装及简单介绍
MySQL数据库是轻量级.开源数据库的佼佼者.其功能和管理,健壮性与Oracle相比还是有相当的差距.因此有非常多功能强大第三方的衍生产品,如percona-toolkit,XtraBackup等等. ...
- moogodb 安装及简单介绍
1,安装Moogodb 因为是windows 64位操作系统,直接到官网上下载.msi文件,下载完成后点击安装,点击同意协议之后,出现下面的对话框, Choose Setup Type, 就是选择安装 ...
- 性能测试三十八:Java性能分析神器-JProfiler安装和简单介绍
Jprofiler是一个重量级的工具,需要分别在服务器和windows都装客户端,会损耗性能,用于发现问题后排查问题,而不是常规的监控 JPROFILER工具下载地址:http://www.ej-te ...
随机推荐
- 运输层3——传输控制协议TCP概述
目录 1. TCP最主要的特点 2. TCP的连接 3. socket在不同场景中的含义 写在前面:本文章是针对<计算机网络第七版>的学习笔记 运输层1--运输层协议概述 运输层2--用户 ...
- ZZNU - OJ - 2080 : A+B or A-B【暴力枚举】
2080 : A+B or A-B(点击左侧标题进入zznu原题页面) 时间限制:1 Sec 内存限制:0 MiB提交:8 答案正确:3 提交 状态 讨论区 题目描述 Give you three s ...
- ReLU激活函数
参考:https://blog.csdn.net/cherrylvlei/article/details/53149381 首先,我们来看一下ReLU激活函数的形式,如下图: 单侧抑制,当模型增加N层 ...
- Robot Framework--pybot命令
1.执行整个项目下的所有用例: pybot 项目路径.例如: pybot D:\robotPS:robot项目里面所有用例 2.执行某个suit中的所有用例: pybot 项目路径\suit文件名称. ...
- machine learning(10) -- classification:logistic regression cost function 和 使用 gradient descent to minimize cost function
logistic regression cost function(single example) 图像分布 logistic regression cost function(m examples) ...
- MySQL 表之间的关系
表之间的关系 # 定义一张部门员工表 emp id name gander dep_name dep_desc 1 ming male 教学部 教书 2 lilei male 教学部 教书 3 ham ...
- NO.24两两交换链表中的节点
NO.24两两交换链表中的节点 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表. 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换. 示例:给定 1->2->3-&g ...
- 007——转载-MATLAB读取文件夹下的文件名
(一)参考文献:https://blog.csdn.net/liutaojia/article/details/84899923 (二)第一步:获取文件夹下某类型数据的所有文件名 主要包括三个步骤: ...
- 重启crond服务
键入“cd /etc/init.d”,进入该目录键入“./crond restart”,重启crond服务
- 简单了解Web Workers API
1. 为什么使用Web Workers API 通过使用该API,web应用程序可以独立于主线程,运行一个单独的线程来处理脚本. 可以在独立的线程中解决耗时较长的任务,避免主线程阻塞. 2. 应用 1 ...