Memcached笔记

本篇文章为菜鸟教程——Memcached教程笔记及自己实际操作记录下的内容。

介绍

(1)Memcached是一个自由开源的,高性能,分布式内存对象缓存系统。

(2)Memcached是一种基于内存的key-value存储,用来存储小块的任意数据(字符串、对象)。这些数据可以是数据库调用、API调用或者是页面渲染的结果。

(3)Memcached简洁而强大。它的简洁设计便于快速开发,减轻开发难度,解决了大数据量缓存的很多问题。

(4)本质上,它是一个简洁的key-value存储系统。

(5)一般的使用目的是,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度、提高可扩展性。

特征

memcached作为高速运行的分布式缓存服务器,具有以下的特点。

  • 协议简单
  • 基于libevent的事件处理
  • 内置内存存储方式
  • memcached不互相通信的分布式
    #Linux下的安装
    memcached的安装非常简单。要安装memcached,首先需要安装libevent库。
sudo apt-get install libevent ibevent-dev         自动下载安装(Ubuntu/Debian)

yum install libevent libevent-devel                    自动下载安装(Redhat/Fedora/Centos)

安装完libevent后,再安装memcached。

sudo apt-get install memcached          (ubuntu/Debian)
yum install memcached                  (centos/Fedora)

源代码安装

wget http://memcached.org/latest                    下载最新版本

tar -zxvf memcached-1.x.x.tar.gz                    解压源码

cd memcached-1.x.x                                  进入目录

./configure --prefix=/usr/local/memcached           配置

make && make test                                   编译

sudo make install                                   安装
  • 这里需要注意,在解压源码的时候,可能文件名不是memcached-.tar.gz,我的文件是latest,需要查看一下下载的文件名叫什么再进行解压。
  • 在执行./configure的时候,一开始没去注意,报了checking for gcc… no,以为配置成功了,后来没找到/usr/local/memcached才意识到没配置成功,这是因为系统缺少gcc套件,同样在make的时候也会出错,解决办法很简单,yum install gcc就可以了。
    #memcached运行
$ /usr/local/memcached/bin/memcached -h                           命令帮助

启动memcached

(1)作为前台程序启动

/usr/local/memcached/bin/memcached -p 11211 -u root -m 64m -vv
  • -p 分配Memcached监听端口
  • -m 分配内存大小,单位是MB
  • -u 指定用户

(2)作为后台服务程序启动

/usr/local/memcached/bin/memcached -p 11211 -m 64m -d

利用-d选项,以守护进程的方式启动,在后台运行。

set & get

启动完memcached后,要使用memcached就需要先进行连接。重新打开一个终端,键入

telnet 主机ip 端口
示例:
telnet 127.0.0.1 11211          #127.0.0.1表示连接本地ip

如果不能运行telnet,则需yum install telnet

set命令

连接完就可以用memcached进行数据存储了。
set命令基本语法如下:

set key flags exptime bytes [noreply] 
value 

参数说明如下:

  • key:键值 key-value 结构中的 key,用于查找缓存值。
  • flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息 。
  • exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
  • bytes:在缓存中存储的字节数
  • noreply(可选): 该参数告知服务器不需要返回数据
  • value:存储的值(始终位于第二行)(可直接理解为key-value结构中的value)

设置成功将会输出STORED

输出信息说明:

  • **STORED:**保存成功后输出。
  • **ERROR:**保存失败后输出。

get命令

命令格式:

get key1 key2 key3

通过get命令即可获取到通过set存储的key的值,如果需要查找多个key,key间用空格分隔。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值