【memcache缓存专题(2)】memcache安装与命令行使用
进新公司一个多月了,一直没有时间来更新,后续还是要保持着每日更新的频率
安装
在windows上安装
略(都玩到缓存的程度了,就没必要在windows上捣弄了)
给个参考: http://blog.csdn.net/yuhui_fish/article/details/7762299
在Linux上安装
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 指定默认内存为64M
memcached的基本命令(安装、卸载、启动、配置相关)
-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*的方式
stats
| 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要弱很多...
【memcache缓存专题(2)】memcache安装与命令行使用的更多相关文章
- NodeJS 安装cnpm命令行工具
在安装之前,请确保已安装Git和NodeJS. cmd机内命令窗口,输入以下命令: git config --system http.sslcainfo /bin/curl-ca-bundle.crt ...
- mac安装GNU命令行工具
mac安装GNU命令行工具 2.添加的repo tap home/dupes brew install coreutils binutils diffutils ed -- ...
- 【分布式】ZooKeeper学习之一:安装及命令行使用
ZooKeeper学习之一:安装及命令行使用 一直都想着好好学一学分布式系统,但是这拖延症晚期也是没得治了,所以干脆强迫自己来写一个系列博客,从zk的安装使用.客户端调用.涉及到的分布式原理.选举过程 ...
- 【Mac】Mac OS X 安装GNU命令行工具
macos的很多用户都是做it相关的人,类unix系统带来了很多方面,尤其是经常和linux打交道的人. 但是作为经常使用linux 命令行的人发现macos中的命令行工具很多都是bsd工具,跟lin ...
- Django之win7下安装与命令行工具
Django之win7下安装与命令行工具 下载安装 pip3 install django 注意:自动添加环境变量 测试是否安装成功 1.输入python 2.输入import django 3.输入 ...
- 你使用 Web 平台安装程序命令行工具
你使用 Web 平台安装程序命令行工具 获取的软件由其所有者授权给你.Microsoft 未授予你第三方软件的任何权利.已成功加载主源: https://go.microsoft.com/?linki ...
- Phoenix |安装配置| 命令行操作| 与hbase的映射| spark对其读写
Phoenix Phoenix是HBase的开源SQL皮肤.可以使用标准JDBC API代替HBase客户端API来创建表,插入数据和查询HBase数据. 1.特点 1) 容易集成:如Spark,Hi ...
- Scrapy框架——介绍、安装、命令行创建,启动、项目目录结构介绍、Spiders文件夹详解(包括去重规则)、Selectors解析页面、Items、pipelines(自定义pipeline)、下载中间件(Downloader Middleware)、爬虫中间件、信号
一 介绍 Scrapy一个开源和协作的框架,其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的,使用它可以以快速.简单.可扩展的方式从网站中提取所需的数据.但目前Scrapy的用途十分广泛,可 ...
- Sass学习之路:Sass、Compass安装与命令行
导言 CSS不是一门真正意义上的编程语言,很多编程语言理所当然的特性(比如变量),都不被支持.同时再开发模块化的web项目的时候,也要避免相互干扰.为了弥补CSS的这些不足,就产生了CSS预处理器,S ...
- 安装rvm命令行工具
rvm是一个命令行工具,可以提供一个便捷的多版本ruby环境的管理和切换. https://rvm.io/ 如果你打算学习ruby/rails, rvm是必不可少的工具之一. 这里所有的命令都是再用户 ...
随机推荐
- C# ProperTyGrid 自定义属性
C# 如果要实现自定义属性必须要需要实现接口ICustomTypeDescriptor // 摘要: // 提供为对象提供动态自定义类型信息的接口. public interface ...
- 9更令人兴奋的WebGL演示
Firefox OS,asm.js和推动浏览器性能改进,画布和WebGL技术是打开一个世界的可能性.我上9令人兴奋的帆布演示,然后把它与9 WebGL演示,但我想超越这篇文章.我发现9个更多的精神We ...
- pyinstall 使用笔记
1.下载pyinstaller 目前pyinstaller支持的python版本为2.3-2.7,可以到http://www.pyinstaller.org/官网下载. 2.安装 下载完成后,解压即可 ...
- 1107. Social Clusters (30)
When register on a social network, you are always asked to specify your hobbies in order to find som ...
- 使用本地光盘安装Microsoft .NET Framework 3.5 for Win8.1/WinServer2012R2
.NET Framework 3.5 作为的SQL Server 2012的先决条件,假如使用图形化方式需要使用internet,对于服务器部署时缓慢的一点(需要下载后安装) 以下提供一个使用使用安装 ...
- PAT乙级真题1016.部分A+B(15)(2016-4-28)
原题: 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 正整数A的“DA(为1位整数)部分”定义为由A中所有DA组成的新整数PA.例如:给定A = 3862767,DA ...
- Activity的Launch mode详解 singleTask正解
Activity有四种加载模式:standard(默认), singleTop, singleTask和 singleInstance.以下逐一举例说明他们的区别: standard:Activity ...
- cocos2d下,优秀骨骼spine的换装思路
语文老师说,文章要有个好开头!!! 最近正在引入spine骨骼代替dragon bone骨骼,既然要替代,那么原先在dragon bone上的一些额外需求,不管dragon bone上能不能实现,都应 ...
- tomcat绑定域名
现在很多的公司的网站都是用tomcat作为应用服务区的,可是对于初学者,8080端口号是如何去掉的,这些网站是如何和域名绑定到一起的呢?一个tomcat是如何绑定多域名?并且这些域名是如何对应不同的项 ...
- cadence16.6 中orcad导出网表时ERROR (ORCAP-5004)
ORCAD网表输出时 ERROR (ORCAP-5004):Error initializing COM property pages 之前遇到过这个问题,解决后忘了记录下来了.依稀记得问题答 ...