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 ...
随机推荐
- ES6 解构赋值详解
解构赋值是对赋值运算符的扩展,可以将属性/值从对象/数组中取出,赋值给其他变量. 一.数组的解构赋值 1.基本用法 只要等号两边的模式相同,左边的变量就会被赋予对应的值. let [a, [[b], ...
- WEB知识补充 支付宝 支付
- Ubuntu 16.04安装Docker-Compose 与 Can't connect to docker from docker-compose
根据别的 网址做一个记录 : https://www.linuxidc.com/Linux/2017-01/139574.htm Linux环境 Ubuntu 16.04(LTS)curl安装安装 ...
- sql server 游标的基本用法
DECLARE @Id NVARCHAR(MAX) DECLARE @UserName NVARCHAR(MAX) DECLARE @Password NVARCHAR(MAX) DECLARE @N ...
- myeclipse2018修改主题
- 「CF319E」Ping-Pong「线段树」「并查集」
题意 规定区间\((a,b)\)到区间\((c,d)\)有边当且仅当\(c<a<d\)或\(c<b<d\). 起初区间集合为空.有\(n\)(\(n\leq 10^5\))次操 ...
- Unity的资源加载以及AssetBundle的一些坑
https://www.cnblogs.com/sigmadruid/p/4040803.html AssetBundle加载完毕,进行其中Asset的初始化后,不能立即Unload().否则Asse ...
- 微信小程序环境下将文件上传到 OSS
步骤 1: 配置 Bucket 跨域 客户端进行表单直传到 OSS 时,会从浏览器向 OSS 发送带有 Origin 的请求消息.OSS 对带有 Origin 头的请求消息会进行跨域规则(CORS)的 ...
- Web前端-JavaScript基础教程下
Web前端-JavaScript基础教程下 <script>有6个属性: async对外部脚本有效,可以用来异步操作,下载东西,不妨碍其他操作. charset为src属性指定字符集. d ...
- RESOURCE SUMMARY
I dont know where to start so searched the net and get a lot of free videos, my plan is to watch the ...