Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它经过在内存中缓存数据和对象来减小读取数据库的次数,从而提升动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用写的,可是客户端能够用任何语言来编写,并经过memcached协议与守护进程通讯。linux
Memcached是一个自由开源的,高性能,分布式内存对象缓存系统。数据库
Memcached是以LiveJournal旗下Danga Interactive公司的Brad Fitzpatric为首开发的一款软件。如今已成为mixi、hatena、Facebook、Vox、LiveJournal等众多服务中提升Web应用扩展性的重要因素。缓存
Memcached是一种基于内存的key-value存储,用来存储小块的任意数据(字符串、对象)。这些数据能够是数据库调用、API调用或者是页面渲染的结果。服务器
Memcached简洁而强大。它的简洁设计便于快速开发,减轻开发难度,解决了大数据量缓存的不少问题。它的API兼容大部分流行的开发语言。并发
本质上,它是一个简洁的key-value存储系统。分布式
通常的使用目的是,经过缓存数据库查询结果,减小数据库访问次数,以提升动态Web应用的速度、提升可扩展性。
memcached
memcached做为高速运行的分布式缓存服务器,具备如下的特色。性能
- 协议简单
- 基于libevent的事件处理
- 内置内存存储方式
- memcached不互相通讯的分布式
yum install memcached 若是缺乏其余包请安装如下组件 yum groupinstall "Development Tools"
Memcached的配置文件很是的简单,若是不须要改动就按默认的而后直接启动便可。
主程序:/usr/bin/memcached
配置文件:/etc/sysconfig/memcached大数据
# cat /etc/sysconfig/memcached PORT="11211" # memechaced监听的端口 USER="memcached" # 运行程序的用户 MAXCONN="1024" # 最大并发链接数 CACHESIZE="64" # 缓存大小 OPTIONS=""
/usr/local/memcached/bin/memcached -h -d是启动一个守护进程; -m是分配给Memcache使用的内存数量,单位是MB; -u是运行Memcache的用户; -l是监听的服务器IP地址,能够有多个地址; -p是设置Memcache监听的端口,,最好是1024以上的端口; -c是最大运行的并发链接数,默认是1024; -P是设置保存Memcache的pid文件。 做为后台程序运行 /usr/local/memcached/bin/memcached -p 11211 -m 64m -d
memcached默认没有认证机制,可借用于SASL进行认证;因此要想链接memcahced的话直接使用最简单的telnet命令便可链接网站
telnet 127.0.0.1 11211 Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is '^]'. set foo 0 0 3 保存命令 bar 数据 STORED 结果 get foo 取得命令 VALUE foo 0 3 数据 bar 数据 END 结束行 quit 退出