一、安装Memcached服务器
1、在安装Memcached之前,必须先安装依赖库libevent,安装方法如下:
wget https://github.com/downloads/libevent/libevent/libevent-2.0.15-stable.tar.gz tar -zxvf libevent-2.0.15-stable.tar.gz cd libevent-2.0.15-stable ./configure --prefix=/usr/local make make install
2、libevent安装完毕,安装Memcached服务器:
wget http://memcached.googlecode.com/files/memcached-1.4.9.tar.gz tar -zxvf memcached-1.4.9.tar.gz cd memcached-1.4.9 ./configure --prefix=/usr/local/memcached make make install
3、安装完毕,使用如下指令启动Memcached服务器:
/usr/local/memcached/bin/memcached -d -m 128 -u root -p 11211
- -d:以守护程序(daemon)方式运行memcached
- -m:设置memcached可以使用的内存大小,单位为MB;
- -l:设置监听IP地址,如果是本机的话,通常不设置此参数;
- -p:设置监听的端口,默认为11211,也可以不设置此参数;
- -u:指定用户,如果当前为root,需要使用此参数指定用户;
二、安装memcached客户端
memcached客户端非常多,对应于各种语言,现在以php为例说明:
1、安装php的memcached扩展如下:
wget http://pecl.php.net/get/memcache-2.2.5.tgz tar -zxvf memcache-2.2.5.tar cd memcache-2.2.5 phpize ./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir make make install
2、在php配置文件php.ini中加入以下配置:
extension=/usr/local/php/lib/php/extensions/no-debug-zts-20120625/memcache.so
3、重启Web服务器。
如果安装成功,可以通过phpinfo()获得扩展的相关信息。
三、memcached的操作使用
class myMemcache { private $memcache; /** * 一般建议这2个值做成常量的形式 */ public function __construct($host = '192.102.1.8', $port = 6379) { $this->memcache = new Memcache(); $this->memcache->connect($host, $port); return $this->memcache; } /** * add 添加一个新key,但是如果 key已经在服务端存在,此操作会失败。 * @param string $Key KEY名称 * @param string $value 值----可以是数组,对象,单值 * @param int $timelift 生存时间 add生存时间默认为0表示数据用不过期 */ public function add($key, $value, $timeLife) { if ($time > 0) { $ret = $this->memcache->add($key, $value, MEMCACHE_COMPRESSED, $timeLife); } else { $ret = $this->memcache->add($key, $value); } return $ret; } /** * set設置一致key 修改键名的值 * @param string $key 键名 * @param string $value 键值 * @param int $timeLife 生命周期 */ public function set($key, $value, $timeLife) { if ($timeLife > 0) { $ret = $this->memcache->set($key, $value, MEMCACHE_COMPRESSED, $timeLife); } else { $ret = $this->memcache->set($key, $value); } return $ret; } /** * 获取key * @param string $key 键名 */ public function get($key) { $ret = $this->memcache->get($key); return $ret; } /** * 删除单个key * @param string $key 键名 */ public function deleteKey($key) { $ret = $this->memcache->delete($key); return $ret; } /** * 删除所有key */ public function deleteAll() { return $this->memcache->flush(); } /** * 返回memcache对象 * memcache我们只封装了常用的一部分 * 拿着这个对象就可以直接调用memcache自身方法 * eg:$memcache->memcacheOtherMethods()->getStats() getStats方法没封 */ public function memcacheOtherMethods() { return $this->memcache; } /** * 释放 */ public function __destruct() { $this->memcache->close(); } }
相关推荐
**Memcached配置详解** Memcached是一款高性能、...通过以上介绍,我们对Memcached的配置和使用有了全面的认识。正确配置和有效利用Memcached,能显著提升Web应用的性能,降低数据库压力,从而优化整体系统架构。
**PHP扩展Memcache与Memcached详解** PHP扩展Memcache和Memcached是两种广泛使用的缓存技术,它们在处理大量数据时能显著...通过本文,你应该对这两个扩展有了基本的认识,包括它们的安装、使用以及在PHP中的应用。
2. **安装Memcache**: - Windows环境下,可以通过下载memcached.exe进行安装。运行这个可执行文件后,它将在后台以服务的形式运行,提供缓存服务。 - 在Linux环境中,通常需要通过包管理器(如apt-get或yum)安装...
然后讲述Nginx如何处理请求,在这个基础之上再认识Nginx提供的服务器的名字,Nginx服务器最大的焦点在于高并发和反向代理,在不多却足够使用的模块下实现了更多的功能。 在第二部分中,通过具体使用实例讲述了...
然后讲述Nginx如何处理请求,在这个基础之上再认识Nginx提供的服务器的名字,Nginx服务器最大的焦点在于高并发和反向代理,在不多却足够使用的模块下实现了更多的功能。 在第二部分中,通过具体使用实例讲述了...
然后讲述Nginx如何处理请求,在这个基础之上再认识Nginx提供的服务器的名字,Nginx服务器最大的焦点在于高并发和反向代理,在不多却足够使用的模块下实现了更多的功能。 在第二部分中,通过具体使用实例讲述了...
然后讲述Nginx如何处理请求,在这个基础之上再认识Nginx提供的服务器的名字,Nginx服务器最大的焦点在于高并发和反向代理,在不多却足够使用的模块下实现了更多的功能。 在第二部分中,通过具体使用实例讲述了...
本书第一部分首先讲述了Nginx服务器的功能、模块管理和进程管理,然后讲述Nginx如何处理请求,在这个基础之上再认识Nginx提供的服务器的名字,Nginx服务器最大的焦点在于高并发和反向代理,在不多却足够使用的模块...
在了解Yii2缓存机制前,我们首先要认识到缓存的重要性,以及如何在Yii2中正确配置和使用缓存。 在Yii2中,缓存的配置通常放置在应用的配置文件中。开发者可以使用不同种类的缓存类,例如FileCache、DbCache、...
本书第一部分首先讲述了Nginx服务器的功能、模块管理和进程管理,然后讲述Nginx如何处理请求,在这个基础之上再认识Nginx提供的服务器的名字,Nginx服务器最大的焦点在于高并发和反向代理,在不多却足够使用的模块...
**缓存技术** 缓存技术在信息技术领域中扮演着至关重要的角色,特别是在性能优化和数据访问速度提升方面。它通过将频繁访问的数据暂时存储在快速...无论是软件开发还是系统架构设计,都需要对缓存有深入的认识和实践。
本书第一部分首先讲述了Nginx服务器的功能、模块管理和进程管理,然后讲述Nginx如何处理请求,在这个基础之上再认识Nginx提供的服务器的名字,Nginx服务器最大的焦点在于高并发和反向代理,在不多却足够使用的模块...
本书第一部分首先讲述了Nginx服务器的功能、模块管理和进程管理,然后讲述Nginx如何处理请求,在这个基础之上再认识Nginx提供的服务器的名字,Nginx服务器最大的焦点在于高并发和反向代理,在不多却足够使用的模块...
然后讲述Nginx如何处理请求,在这个基础之上再认识Nginx提供的服务器的名字,Nginx服务器最大的焦点在于高并发和反向代理,在不多却足够使用的模块下实现了更多的功能。 在第二部分中,通过具体使用实例讲述了...
内存缓存,如Redis或Memcached,将数据存储在服务器的内存中,提供极快的读取速度。然而,由于内存资源有限,这种缓存策略适用于小规模或短期存储高访问频率的数据。 磁盘缓存,如文件系统缓存,将数据保存在硬盘上...
然后讲述Nginx如何处理请求,在这个基础之上再认识Nginx提供的服务器的名字,Nginx服务器最大的焦点在于高并发和反向代理,在不多却足够使用的模块下实现了更多的功能。 在第二部分中,通过具体使用实例讲述了...
然后讲述Nginx如何处理请求,在这个基础之上再认识Nginx提供的服务器的名字,Nginx服务器最大的焦点在于高并发和反向代理,在不多却足够使用的模块下实现了更多的功能。 在第二部分中,通过具体使用实例讲述了...
这个函数会首先检查是否已经在全局缓存中存在所需的数据,如果没有,再根据是否启用APC来决定是使用APC缓存还是Memcached。 性能优化的每个部分都是Facebook技术架构中不可或缺的,每一个小细节都经过精心设计与...