关于Memcache与memcached
Memcache是项目名,memcached是服务名。让很多初接触的人感觉很是莫名其妙。个人认为正确的应该是用前者用更为正确一点。
安装Memcache
Memcache分为两部分,Memcache服务端和客户端。Memcache服务端是作为服务来运行的,所有数据缓存的建立,存储,删除实际上都是在这里完成的。客户端,在这里我们指的是PHP的可以调用的扩展。
1)安装Memcache服务端
sudo apt-get install memcached
安装完Memcache服务端以后,我们需要启动该服务:
memcached -d -m 128 -p 11111 -u root
这里需要说明一下memcached服务的启动参数:
-p 监听的端口
-l 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25-n 最小分配空间,key+value+flags默认是48
-h 显示帮助
2)安装Memcache客户端
sudo apt-get install php5-memcache
安装完以后我们需要在php.ini里进行简单的配置,打开/etc/php5/apache2/php.ini文件在末尾添加如下内容:
[Memcache]
; 一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,
; 它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。
; 是否在遇到错误时透明地向其他服务器进行故障转移。
memcache.allow_failover = On
; 接受和发送数据时最多尝试多少个服务器,只在打开memcache.allow_failover时有效。memcache.max_failover_attempts = 20
; 数据将按照此值设定的块大小进行转移。此值越小所需的额外网络传输越多。
; 如果发现无法解释的速度降低,可以尝试将此值增加到32768。
memcache.chunk_size = 8192
; 连接到memcached服务器时使用的默认TCP端口。
memcache.default_port = 11111
; 控制将key映射到server的策略。默认值”standard”表示使用先前版本的老hash策略。
; 设为”consistent”可以允许在连接池中添加/删除服务器时不必重新计算key与server之间的映射关系。
;memcache.hash_strategy = “standard”; 控制将key映射到server的散列函数。默认值”crc32″使用CRC32算法,而”fnv”则表示使用FNV-1a算法。
; FNV-1a比CRC32速度稍低,但是散列效果更好。
;memcache.hash_function = “crc32″
保存php.ini,执行sudo /etc/init.d/apache2 restart重启Apache。
在PHP中使用Memcache
<?php
$mem = new Memcache; //创建Memcache对象
$mem->connect(”127.0.0.1″, 11111); //连接Memcache服务器
$val = “这是一个Memcache的测试.”;
$key = md5($val);
$mem->set($key, $val, 0, 120); //增加插入一条缓存,缓存时间为120s
if(($k = $mem->get(’key’))){ //判断是否获取到指定的key
echo ‘from cache:’.$k;
} else {
echo ‘normal’; //这里我们在实际使用中就需要替换成查询数据库并创建缓存.
}
?>
对于key,通常用md5 查询语句来获取,在实际使用中根据具体需要来决定好了…
通过上面的步骤,我们就完成了Memcache的配置和基本使用…
php5-memcache扩展提供的方法
Memcache::add — 添加一个值,如果已经存在,则返回false
Memcache::addServer — 添加一个可供使用的服务器地址
Memcache::close — 关闭一个Memcache对象
Memcache::connect — 创建一个Memcache对象
memcache_debug — 控制调试功能
Memcache::decrement — 对保存的某个key中的值进行减法操作
Memcache::delete — 删除一个key值
Memcache::flush — 清除所有缓存的数据
Memcache::get — 获取一个key值
Memcache::getExtendedStats — 获取进程池中所有进程的运行系统统计
Memcache::getServerStatus — 获取运行服务器的参数
Memcache::getStats — 返回服务器的一些运行统计信息
Memcache::getVersion — 返回运行的Memcache的版本信息
Memcache::increment — 对保存的某个key中的值进行加法操作
Memcache::pconnect — 创建一个Memcache的持久连接对象
Memcache::replace — R对一个已有的key进行覆写操作
Memcache::set — 添加一个值,如果已经存在,则覆写
Memcache::setCompressThreshold — 对大于某一大小的数据进行压缩
Memcache::setServerParams — 在运行时修改服务器的参数
分享到:
相关推荐
总结来说,在Ubuntu系统下安装memcache需要先安装libevent库,然后安装memcached程序本身,并且如果需要在PHP中使用memcache还需要安装PHP的memcache扩展。整个过程涉及到从源码包的下载、编译到配置和测试,每一步...
### Ubuntu系统下安装Reviewboard详解 #### 一、概述 本文档将详细介绍如何在Ubuntu系统上安装并配置Reviewboard,一款流行的代码审查工具。通过本文档的学习,您将能够掌握安装过程中所需的关键步骤以及相关软件的...
**Memcache 安装配置使用说明** --- **1、简介** 1.1 **文档目的** 本文档旨在提供详细的步骤和指南,帮助用户成功地在他们的系统上安装、配置和使用Memcache,这是一个高效的分布式内存对象缓存系统,常用于缓解...
Linux MemCache 安装手册 Memcached是一款高性能、分布式内存对象缓存系统,它被广泛应用于Web应用中,用于减轻数据库的负载,提高数据访问速度。这个安装手册将引导你完成在Linux环境下安装和配置Memcached的过程...
通过上述步骤,我们已经了解了如何在Ubuntu系统中,以编译方式安装LMAP套件的基本流程。值得注意的是,由于涉及大量依赖库的安装与配置,此过程较为复杂,需要细致操作,确保每一步都准确无误。此外,考虑到Ubuntu...
本文将详细介绍如何在Linux环境下安装和配置Memcache服务器端及PHP扩展。 首先,确保你的系统满足基本的安装条件。你需要一个支持编译的环境,通常在Linux发行版中,如Ubuntu、CentOS或Debian,这些环境已经预装。...
**Memcached** 是一个高性能、分布式内存对象缓存系统,用于在...以上就是 Memcached 的安装与使用介绍,包括基本操作、最佳实践及扩展知识。在实际应用中,合理利用 Memcached 可以显著提升系统的响应速度和用户体验。
在Linux环境下,可以使用以下命令安装: - Ubuntu/Debian: `sudo apt-get install memcached` - CentOS/RHEL: `sudo yum install memcached` 2. **启动与停止服务**: 安装完成后,你可以使用系统服务管理命令启动...
### Ubuntu 下 LAMP 的部署详解 #### 一、概述 LAMP 是一套常见的 Web 开发环境,由 Linux、Apache、MySQL 和 PHP 组成。在本篇内容中,我们将详细介绍如何在 Ubuntu 操作系统上搭建 LAMP 环境。通过这一过程,读者...
### Ubuntu 12.04 OpenStack Essex安装(多节点) ...以上步骤完成了OpenStack Essex在Ubuntu 12.04系统上的初步安装环境准备和控制节点的基本配置。接下来可以继续进行其他组件的具体安装和配置工作。
本教程将详细介绍Memcache的基本概念、安装与配置、使用方法以及最佳实践。 1. **基本概念** - **缓存**:缓存是一种存储技术,用于临时存储频繁访问的数据,以减少对主存储器或网络资源的访问,提高系统性能。 -...
### Ubuntu LAMP环境安装知识点详解 #### 一、概述 在Ubuntu系统上搭建LAMP(Linux、Apache、MySQL、PHP)环境是常见的Web服务器配置方式之一。本文将根据提供的安装笔记,详细介绍各组件的安装步骤及注意事项。 #...
在Ubuntu环境下安装和启动Memcached,一个轻量级的分布式内存对象缓存系统,通常用于提高Web应用程序的性能,通过将数据存储在内存中而不是频繁地访问数据库,从而减少了I/O操作。以下是详细的步骤和解释: 首先,...
1. **安装**:在不同的操作系统上,可以通过包管理器(如 apt-get 在 Ubuntu 上,brew 在 macOS 上)安装 Memcache。 2. **配置**:配置文件通常为 `memcached.conf`,可设置监听端口、最大内存使用量、最大连接数等...
例如,在Linux系统中,可以使用包管理器如`apt-get`(Ubuntu/Debian)或`yum`(CentOS/RHEL)进行安装。在Windows系统中,通常需要下载编译好的二进制文件进行安装。文件列表中的`memcached`可能就是编译好的可执行...
在提供的压缩包“redis&memcache所需扩展包”中,可能包含了不同操作系统下的安装脚本、配置文件或额外的扩展组件。确保正确解压并根据系统环境使用这些资源,有助于顺利地在你的系统上部署和使用 Redis 和 ...
**memcached缓存服务器安装与使用** `memcached` 是一个高性能、分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提升应用程序性能。它广泛应用于网站、API服务和内部应用程序,通过缓存经常访问的数据来...
在Ubuntu 17.10操作系统中安装和配置phpMyAdmin数据库管理工具是一个涉及多个步骤的过程,主要是为了在Linux环境下建立一个方便的Web接口来管理和操作MySQL或MariaDB数据库。以下是对整个过程的详细说明: 首先,...
2. **编译与安装**: 解压下载的安装文件,进入解压后的目录,运行`./configure`来配置编译选项,接着执行`make`进行编译,最后使用`sudo make install`进行安装。如果系统缺少依赖,如题目中提到的`libevent`,需要...
- **连接与操作**:客户端库提供了连接、设置、获取、删除等基本操作,例如在PHP中,可以使用`memcache_connect()`函数建立连接,`memcache_set()`和`memcache_get()`进行数据存取。 5. **Memcached的应用场景** ...