memcached安装与使用详解
一、memcache的简介
memcache是高速,分布式的内存缓存服务器
php的缓存方式一般可以使用memcache技术和redis技术,其中各有优劣,因不同的情况而选择较为适合的缓存技术,其中memcache是缓存系统,而redis是数据库系统,memcache相对于redis的优点是高速,但是速度的差异性很难看出区分。但是memcache的安装,使用等都较为简单,当然redis的逼格当然相对高点
二、memcache的安装
二进制程序,基于命令行的程序
(1)直接双击memcached.exe

(2)cmd执行,将memcache加入服务管理



安装时加上-d 参数即可
使用-h参数可以查看其全部参数含义

其中重要选项
-p 监听端口 默认11211 -l监听的IP -m memcache的最大容量 以M为单位 默认64M
到此安装服务器端完毕
三、memcache的使用
(1)使用SecureCRT作为客户端,对memcache进行操作,发出是以Telnet协议的方式,进行远程连接的
设置:set
规则:set 键名 压缩标志 生命周期 值的长度
值
注释:压缩标志:1表示压缩 0表示不压缩,压缩解缩会消耗时间,但是会节省空间,根据需求而定
生命周期:可以是时间间隔,也可以是时间戳,其是以30*3600*24=2592000(30天的时间)
· 小于等于视为时间间隔,大于为时间戳
值的长度:以字节为单位

获取get
规则 get 键名

其他设置
incr 键名 数值 自增多少
decr 键名 数值 自减多少
add :用法与set相同 如key存在则添加失败
replace:用法与set相同 如key存在则替换失败
delete:删除某个键值
flushall:清空所有
(2)使用php进行操作
配置
1、把相对应的php版本的php_memcache.dll拷贝到php的扩展文件夹
2、配置:在php.ini开启php_memcache.dll的扩展
使用
可以使用OOP语法管理memcached服务器
1、创建memcache实例
$memcache=new Memcache();
$host='localhost';
$port='11211';
$res=$memcache->connect($host,$port);
//对memcache的数据进行操作
$memcache->close();
2、数据类型的支持
把标量类型转化成字符串类型进行处理
非标量的数据类型转成json数据进行处理
3、分布式
memcache可以添加对台memcache服务器到集群里,由php_memcache的扩展进行分布式算法处理,选择一台memcache服务器进行存储
$memcache=Memcache();
//添加服务器到集群
$host='192.168.10.110';
$port='11211';
$memcache->addServer($host,$port);
$host='127.0.0.1';
$port='11212';
$memcache->addServer($host,$port);
//memcache操作
$memcache->close();//关闭memcache
4、缓存失效
缓存过期:memcache在处理过期缓存的时,采用的时懒惰模式的处理方法,即是缓存过期不会立即去处理而是等待服务器去获取的时候,判断是否过期,然后再去删除
缓存空间已满:memcache在插入数据时,若空间不足时,采用删除旧缓存中删除最少用的缓存项的策略,而不是看缓存是否过期,此策略叫RLU策略
5、常用场景
1、session进memcache
首先要先定义memcache,session的处理器
ini_set('session.save_handler', 'memcache');
//定义memcache服务器信息
ini_set('session.save_path', "tcp://127.0.0.1:11211");
session_start();
//session操作
memcached安装与使用详解的更多相关文章
- libCURL开源库在VS2010环境下编译安装,配置详解
libCURL开源库在VS2010环境下编译安装,配置详解 转自:http://my.oschina.net/u/1420791/blog/198247 http://blog.csdn.net/su ...
- zookeeper的安装(图文详解。。。来点击哦!)
zookeeper的安装(图文详解...来点击哦!) 一.服务器的配置 三台服务器: 192.168.83.133 sunshine 192.168.83.134 sunshineMin 19 ...
- 转AjaxControlToolkit的安装与使用详解
AjaxControlToolkit的安装与使用详解 AjaxControlToolkit下载http://ajax.asp.net/downloads/default.aspx?tabid=47ht ...
- 学习笔记--Grunt、安装、图文详解
学习笔记--Git安装.图文详解 安装Git成功后,现在安装Gruntjs,官网:http://gruntjs.com/ 一.安装node 参考node.js 安装.图文详解 (最新的node会自动安 ...
- Mac下安装HBase及详解
Mac下安装HBase及详解 1. 千篇一律的HBase简介 HBase是Hadoop的数据库, 而Hive数据库的管理工具, HBase具有分布式, 可扩展及面向列存储的特点(基于谷歌BigTabl ...
- Ubuntu下安装JDK图文详解
很详细的在Ubuntu中安装JDK图文详解教程,我们选择的是jdk1.6.0_30版本.安装文件名为jdk-6u30-linux-i586.bin. 1.复制jdk到安装目录 (1)假设jdk安装文件 ...
- CentOS7/RHEL7安装Redis步骤详解
CentOS7/RHEL7安装Redis步骤详解 CentOS7/RHEL7安装Redis还是头一次测试安装了,因为centos7升级之后与centos6有比较大的区别了,下面我们就一起来看看Cent ...
- RedHat 7.1 下安装 Zabbix监控程序详解(适合linux初级用户)
RedHat 7.1 安装 Zabbix 监控程序详解(适合对linux初级用户)2017-05-02 安装步骤: 1.zabbix需要安装LAMP架构 2.安装zabbix服务 3.初始化zabbi ...
- Vmware12安装centos系统详解
vmware12安装centos7系统详解 用虚拟机12安装centos7系统详细安装过程,后附centos7下载地址. 工具/原料 虚拟机12 centos7系统镜像 方法/步骤 1 1.百度搜索c ...
随机推荐
- 如何检测浏览器url变化
用户通过“点击触发”,“操作历史”,“直接访问URL”的方式修改当前URL.这三种触发方式会使浏览器做出不同的行为 html5提供了两种方式在页面中操作历史 history.pushState(sta ...
- springboot:快速构建一个springboot项目
前言: springboot作为springcloud的基础,springboot的热度一直很高,所以就有了这个springboot系列,花些时间来了解和学习为自己做技术储备,以备不时之需[手动滑稽] ...
- Spark算子--map和flatMap
map和flatMap--Transformation类算子 代码示例 result
- JavaScript语法基础:数组的常用方法详解
本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. 数组的定义 之前学习的数据类型,只能存储一个值(字符串为一个值).如果我 ...
- 两种方法上传本地文件到github
https://www.jianshu.com/p/c70ca3a02087 自从使用github以来,一直都是在github网站在线上传文件到仓库中,但是有时因为网络或者电脑的原因上传失败.最重要的 ...
- 与改写url取文件的方法:NetworkRequest和DataAccessSerivice 文件
与改写url取文件的方法:NetworkRequest和DataAccessSerivice 文件 CMDNMapDataCache.cpp 读取二进制代码的方法
- Redis的事务功能详解
Redis的事务功能详解 MULTI.EXEC.DISCARD和WATCH命令是Redis事务功能的基础.Redis事务允许在一次单独的步骤中执行一组命令,并且可以保证如下两个重要事项: >Re ...
- jQuery——动态给表格添加序号
摘录自:http://www.cnblogs.com/picaso/archive/2012/10/08/2715564.html 很多时候遇到需要对表格动态操作,而且一般都会有表格的序号,但是有时候 ...
- 动态添加div及对应的js、css文件
动态添加div及对应的js.css文件 在近期的项目开发中需要在首页中添加很多面板型的div,直接加载代码显得很繁琐,于是利用js封装一个动态添加div及其对应css文件和js文件的方法供大家参考使用 ...
- MySQL 报错 _DATA_TYPE_INVALID_
报错如下: Fatal error: Uncaught Exception: _DATA_TYPE_INVALID_ :[status=>0] in /usr/local/nginx/html/ ...