memcached介绍、安装

编程入门 行业动态 更新时间:2024-10-28 09:26:39

<a href=https://www.elefans.com/category/jswz/34/1689898.html style=memcached介绍、安装"/>

memcached介绍、安装

引言:对于memcached的个人愚见

memcached作为缓存,从实际例子出发,来说明缓存的作用:
比如一个网站时时刻刻承受着来自浏览器的访问请求,浏览器访问各种各样的资源,如果网站对于客户端请求的每个资源都去自己的数据库去查找的话,那么随着浏览器请求量的激增,势必加剧网站对数据库的请求,当请求量到达一定峰值并且数据库服务器处理不了这些请求时,将导致拥塞甚至会击垮数据库服务器。

== 因此,网站对于浏览器经常访问的资源进行备份,即不是每次请求数据都通过IO读取数据库磁盘的方式,而是将热门数据始终存放在内存中,当访问一个数据时,先从缓存中去查找,如果缓存中有就直接返回,如果没有再去数据库中查找。 ==> 这样将会大大地降低对数据库服务器地请求,并且还能加快对数据的查找(因为访问缓存比访问数据库快非常非常多) ==>这就是memcached存在的重大意义!

1、memcached介绍

自由&开放源码,高性能,分布式的内存对象缓存系统
NoSQL—not only sql,不仅仅是关系型数据库
显著特点:key-value键值对存储,如memcached、redis

2、Linux下源代码安装memcached

wget                     下载最新版本
tar -zxvf memcached-1.x.x.tar.gz                    解压源码cd memcached-1.x.x                                  进入目录
./configure --prefix=/usr/local/memcached           配置
make && make test                                   编译
sudo make install                                   安装

3、查看memcached的各种选项

[gjw@localhost memcached-1.5.12]$ memcached -h
memcached 1.5.12
-p, --port=<num>          TCP port to listen on (default: 11211) 默认监听端口11211
-d, --daemon              run as a daemon  将memcached安装成守护进程
...
-u, --user=<user>         assume identity of <username> (only when run as root) 用哪个用户执行
-m, --memory-limit=<num>  item memory in megabytes (default: 64 MB) 指定最大占64M内存
-c, --conn-limit=<num>    max simultaneous connections (default: 1024) 最大允许多少个客户端连接上来
...
-v, --verbose             verbose (print errors/warnings while in event loop) 把输出信息打印出来
-vv                       very verbose (also print client commands/responses) 把错误信息打印出来
-vvv                      extremely verbose (internal state transitions)
...
-f, --slab-growth-factor=<num> chunk size growth factor (default: 1.25) 增长因子

4、启动Memcached

(1) 作为前台程序启动memcached
[gjw@localhost memcached-1.5.12]$ /usr/local/memcached/bin/memcached -p 11211 -m 64m -vv

slab class 1: chunk size 96 perslab 10922
slab class 2: chunk size 120 perslab 8738
slab class 3: chunk size 152 perslab 6898
… …
slab class 38: chunk size 394840 perslab 2
slab class 39: chunk size 524288 perslab 2
<26 server listening (auto-negotiate)
<27 server listening (auto-negotiate)

注解:此处大量出现了slab class、chunk,它们实际上是memcached的内存分配方式,详细请参考文章《Memcached之内存分配机制》

(2) 作为后台服务程序运行启动memcached
/usr/local/memcached/bin/memcached -p 11211 -m 64m -d

5、memcached的连接

memcached客户端与服务器的通信比较简单,使用的是基于文本的协议,而不是二进制协议。因此可以通过telnet即可与memcached作交互,见下:

[gjw@localhost ~]$ telnet localhost 11211
Trying ::1...
Connected to localhost.
Escape character is '^]'.set name 0 0 6       
oldboy
STORED
get name
VALUE name 0 6
oldboy
END

更多推荐

memcached介绍、安装

本文发布于:2024-02-12 01:15:23,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1684873.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:memcached

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!