Memcached入门

本文介绍了Memcached,一种高性能的分布式内存对象缓存系统,主要用于加速动态Web应用。通过减少数据库负载,Memcached能够提高网站响应速度。文章还详细讲述了Memcached的安装配置过程及其在CentOS上的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Memcached简介

Memcached是一个免费开源的高性能的、具有分布式内存对象的缓存系统,它通过减少数据库负载加速动态Web应用。目前全世界很多用于都使用它来构建大负载网站或提高网站的响应速度。

Memcache是这个项目的名称,Memcached是服务器端的主程序文件名。

Memcached是一种内存缓存,把经常存取的对象或数据缓存在内存中,内存中缓存的这些数据通过API的方式被存取,数据就像一张大的HASH表,以Key-value对的方式存在。Memcached通过缓存经常被存取的对象或数据,来减轻数据库的压力,提高网站的响应速度,这样去构建速度更快地可扩展的Web应用。

Memcached的特征

  1. 协议简单
    • 使用基于文本行的协议
    • 能直接通过telnet在Memcached服务器上存取数据
  2. 基于libevent的事件处理
    • 确保了服务器端的连接数增加时也能发挥很好地性能
  3. 内置的内存管理方式

    • 重用过期数据的内存空间

    注意:

    Memcached是为缓存系统设计的,没有考虑数据的容灾问题,和机器的内存一样,重启机器后数据将会丢失。

  4. 互不通信的Memcached之间具有分布特征
    • 每个Memcached服务器之间互相不通信,都是独立的存取数据,不共享任何信息,通过对客户端的设计,让Memcached具有分布式,能支持海量缓存和大规模应用。

Memcached的使用 - CentOS

安装

先安装libevent,然后再安装memcached,都是执行以下三个命令即可:

  1. ./configure
  2. make
  3. make install

启动 - 本示例版本: Version1.4.25

sudo /usr/local/memcached/bin/memcached -m 32m -p 11211 -d -u root -P /var/run/memcached.pid -c 256 -vv

参数说明:
    * -m:最大内存大小。默认为64MB
    * -p:使用的TCP端口。默认为11211
    * -d:作为守护进程在后台运行
    * -u:运行memcached的用户,默认不能由root用户启动,所以需要指定
    * -P:设置保存Memcached的pid文件
    * -c:最大运行的并发连接数,默认是1024,这个按需配置
    * -vv:以very verbose模式启动,将调试信息和错误输出到控制台

连接测试

执行命令: telnet localhost 11211
返回:
连接成功后返回数据

读写Memcached

执行的命令与返回结果
输入的命令序列:
1. set temp 0 0 10
2. temp_value - 说明:输入的key为temp存入的数据
到这里,已经把temp值写入到memcached了 - STORED是写入后返回的结果说明
3. get temp
4. quit - 退出连接

关闭Memcached

前面在启动时,使用了-P参数,这里关闭引用到了:
kill `cat /var/run/memcached.pid`

安装Memcache的PHP扩展

  1. http://pecl.php.net网站下载扩展包,本次使用memcached-2.0.0.tgz
  2. 执行命令: /usr/local/php/bin/php-config
  3. 执行命令: ./configure –enable-memcache –with-php-config=/usr/local/php/bin/php-config
    • 提示找不到libmemcached,去下载libmemcached安装wget https://launchpad.net/libmemcached/1.0/1.0.9/+download/libmemcached-1.0.9.tar.gz
    • 安装:./configure –prefix=/usr/local/libmemcached –with-memcached
    • 提示错误,找不到event, 执行命令: sudo yum install libevent-devel
    • 重新执行./configure –prefix=/usr/local/libmemcached –with-memcached, make , make install即可
  4. 执行命令: ./configure –enable-memcached –with-php-config=/usr/local/php/bin/php-config –with-libmemcached-dir=/usr/local/libmemcached
  5. make && make install
  6. 完成后有如下输出:
    这里写图片描述
  7. 修改php.ini文件,把php.ini中的extention_dir=”./”修改为:extensin_dir=”/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/”
    1. 未调试好支持php连接memcached
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值