阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Memcache 内存对象缓存系统

123次阅读
没有评论

共计 2712 个字符,预计需要花费 7 分钟才能阅读完成。

简介:

Memcached 是一个高性能的分布式内存存储对象缓存系统,用于动态 WEB 应用以减轻数据库负载。

它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度。

Memcached 基于一个存储键 / 值对的 hashmap。

其守护进程是用 C 写的,但是客户端可以用任何语言来编写,并通过 Memcached 协议与守护进程通信,且它不提供冗余; 当某个服务器停止运行或崩溃了,所有放在该服务器上的键 / 值对都将丢失。

下载地址:

http://jaist.dl.sourceforge.net/project/levent/libevent/libevent-2.0/libevent-2.0.22-stable.tar.gz

https://memcached.googlecode.com/files/memcached-1.4.15.tar.gz

1、安装 libevent 库

## 这是一个 memcached 所依赖的异步事件通知库

shell > tar zxf libevent-2.0.22-stable.tar.gz -C ../
shell > cd ../libevent-2.0.22-stable/
shell > ./configure ; make ; make install

2、安装 Memcached

shell > tar zxf memcached-1.4.15.tar.gz -C ../
shell > cd ../memcached-1.4.15/
shell > ./configure --prefix=/usr/local/memcached ; make ; make install

3、启动 Memcached

shell > /usr/local/memcached/bin/memcached -d -m 512 -p 11211 -u nobody -c 4096

## -l 监听地址,memcache 无身份验证功能,严禁在无防护情况下使用
## -d 以守护进程的形式运行
## -m 指定分配内存大小,单位 m
## -p 监听端口
## -u 运行用户
## -c 最大并发连接数
## -P PID 文件存放位置
## -f 增长因子

## 启动报错

/usr/local/memcached/bin/memcached: 
error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory

## 解决方法

shell > find / -name libevent-2.0.so.5
/usr/local/lib/libevent-2.0.so.5
shell > ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib64/
shell
> /usr/local/memcached/bin/memcached -d -m 512 -p 11211 -u nobody -c 4096
shell
> netstat -anpt | grep memcached tcp 0 0 0.0.0.0:11211 0.0.0.0:* LISTEN 13465/memcached tcp 0 0 :::11211 :::* LISTEN 13465/memcached

## 启动成功,监听所有地址,包括 ipv6,这样不安全,最好 -l 指定监听 IP

4、测试 Memcached

## 语法

command <key> <flags> <expiration time> <bytes>
<value>

command 包括:set add replace get delete

key               key 用于查找缓存值
flags             可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息
expiration time   在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)bytes             在缓存中存储的字节点
value             存储的值(始终位于第二行)
 
 
shell > telnet 127.0.0.1 11211    # 登陆 memcached
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
set id 0 0 5                      # 保存一个值
12345
STORED
get id                            # 取值
VALUE id 0 5
12345
END
replace id 0 0 5                  # 更新值
88888
STORED
get id                            # 查看是否更新
VALUE id 0 5
88888
END
quit                              # 退出
Connection closed by foreign host.

shell > telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
get id                            # 重新登陆还保存着
VALUE id 0 5
88888
END
quit
Connection closed by foreign host.

shell > telnet 127.0.0.1 11211
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
get id
VALUE id 0 5
88888
END
delete id                          # 删除值
DELETED
get id
END
quit
Connection closed by foreign host.

CentOS 6.6 下 Memcached 源码安装配置  http://www.linuxidc.com/Linux/2015-09/123019.htm

Memcached 安装及启动脚本 http://www.linuxidc.com/Linux/2013-07/87641.htm

PHP 中使用 Memcached 的性能问题 http://www.linuxidc.com/Linux/2013-06/85883.htm

Ubuntu 下安装 Memcached 及命令解释 http://www.linuxidc.com/Linux/2013-06/85832.htm

Memcached 的安装和应用 http://www.linuxidc.com/Linux/2013-08/89165.htm

使用 Nginx+Memcached 的小图片存储方案 http://www.linuxidc.com/Linux/2013-11/92390.htm

Memcached 使用入门 http://www.linuxidc.com/Linux/2011-12/49516p2.htm

Memcached 的详细介绍 :请点这里
Memcached 的下载地址 :请点这里

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-07/132818.htm

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-21发表,共计2712字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中