Quantcast
Channel: CodeSection,代码区,Linux操作系统:Ubuntu_Centos_Debian - CodeSec
Viewing all articles
Browse latest Browse all 11063

memcached学习――大纲简介 && 安装(基于centos6.5)、启动、关闭memcache ...

$
0
0

大纲简介

安装前,先简单介绍一下memcached。

memcached是一个免费、开源、高性能的分布式缓存。设计memcached的初衷是为了加快web应用程序,减少DB负载。

安装要求:支持大多数linux和基于BSD的系统,官方没有给出windows版本,但是网上有memcached for windows可以在windows上使用。

数据类型:仅仅支持string类型数据

特点:

简单的key-value的键值对。

基于c/s架构,客户端负责选择要写入的目标服务器以及通过接口进行读写操作,服务器则负责实际的写入操作、内存管理等。

所谓分布式是用一致性hash算法实现的,各节点相互独立,没有任何通信机制。

分配的内存不会被释放掉,但是可以被重用,基于LRU算法实现。

完全基于内存,没有持久化机制。

效率:

官方给出的数值,在比较牛B的机器上,memcached的理论效率能达到200000次/s(没有机器配置,仅供参考)

使用需要注意的内容:

不能随意更改服务器的时间,可能影响到缓存的失效时间

网络稳定

内存足够,避免使用到Swap分区,否则会造成性能问题

连接数配置合理

增长因子配置合理,否则造成大量的内存浪费

OK,前戏足够,下面直奔主题~

安装memcached

#memcached依赖libevent,所以先下载并安装libevent。

#到官网下载:

#https://github.com/libevent/libevent/releases/download/release-2.0.22-stable/libevent-2.0.22-stable.tar.gz

tar -zxvf libevent-2.0.22-stable.tar.gz

cd libevent-2.0.22-stable

./configure --prefix=/usr/local/libevent-2.0.22-stable

make && make install

安装memcached

安装最新版本memcached

wget https://memcached.org/latest

tar -zxvf memcached-1.4.34.tar.gz

cd memcached-1.4.34.tar.gz

#--with-libevent:指定libevent的安装目录,--prefix:指定安装的版本,相关命令cd到memcached/bin下,使用./configure --help查看

./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent-2.0.22-stable/ --enable-64bit

make && make install

安装期间可能遇到的问题:

没有安装gcc无法编译 => yum -y install gcc

至此memcached安装成功!

启动、停止memcached

1.启动

#cd到memcached的安装目录,执行启动命令

 cd /usr/local/memcached-1.4.34/bin  ./memcached -u root -m 80 -c 1024 -p 11213 -n 70 -f 1.2 -d

memcached启动参数说明:(更多参数请使用./memcached -help查看)

-u 进程用户

-m 分配内存,注意实际分配内存要略微高于此值。当然,如果设置内存过低(低于64M),实际使用内存可能 >= 64M。

-c 连接数,默认是1024

-n 最小分配内存 key + value + flags,最小是48bytes

-f 增长因子,和memcached的内存分配有关

-d 以守护线程启动

-v 提示信息(在事件循环中打印错误、警告信息)

-vv 详细信息(可以打印客户端命令、响应),以very vrebose模式启动,调试信息和错误输出到控制台

-vvv 超详细信息(可以打印内部状态的变化)

-p 指定端口号,一台server上可以跑多个实例

-l 用于绑定特定的接口或IP地址,安全相关

-P 监听TCP端口

-U 监听UDP端口

-s 限制只能通过本地用户访问,配置此参数后TCP和UDP监听都将失效

-L 尝试使用大内存页(如果可用的话)。提高内存页尺寸可以减少"页表缓冲(TLB)"丢失次数,提高运行效率

2.停止

#查询memcached进程id,杀死进程

 ps -ef|grep memcached  kill -9 pid

操作示例:


memcached学习――大纲简介 && 安装(基于centos6.5)、启动、关闭memcache ...

Viewing all articles
Browse latest Browse all 11063

Trending Articles