php操作memcache缓存基本方法
memcache 是一个高效的分布式的内存对象缓存系统,他可以支持把php的各种数据(数组,对象,基本数据类型)放在它管理的内存中
1、代码使用
<?php //连接 $mem = new Memcache; $mem->connect("127.0.0.1", 11211) or die ("Could not connect"); //显示版本 $version = $mem->getVersion(); echo "Memcached Server version: ".$version."<br>"; //保存数据 $mem->set('key1', 'This is first value', 0, 60); $val = $mem->get('key1'); echo "Get key1 value: " . $val ."<br>"; //替换数据 $mem->replace('key1', 'This is replace value', 0, 60); $val = $mem->get('key1'); echo "Get key1 value: " . $val . "<br>"; //保存数组 $arr = array('aaa', 'bbb', 'ccc', 'ddd'); $mem->set('key2', $arr, 0, 60); $val2 = $mem->get('key2'); echo "Get key2 value: "; print_r($val2); echo "<br>"; //对数组进行序列化,在网络传输的时候,为了保证,数据类型的不丢失,先序列化,再发生. //$arr1=serialize($arr); $arr2=json_encode($arr1); print_r($arr2); //删除数据 $mem->delete('key1'); $val = $mem->get('key1'); echo "Get key1 value: " . $val . "<br>"; //清除所有数据 $mem->flush(); $val2 = $mem->get('key2'); echo "Get key2 value: "; print_r($val2); echo "<br>"; //关闭连接 $mem->close(); ?>
2、函数库详解:
Memcache::add - 添加一个值,如果已经存在,则返回false Memcache::addServer - 添加一个可供使用的服务器地址 Memcache::close - 关闭一个Memcache对象 Memcache::connect - 创建一个Memcache对象 memcache_debug - 控制调试功能! [4 F8 C2 e, X 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 -对一个已有的key进行覆写操作 Memcache::set - 添加一个值,如果已经存在,则覆写 Memcache::setCompressThreshold - 对大于某一大小的数据进行压缩 Memcache::setServerParams - 在运行时修改服务器的参数
3、分布式使用:
Memcache函数库是在PECL(PHP Extension Community Library)中,主要作用是搭建大容量的内存数据的临时存放区域,在分布式的时候作用体现的非常明显
<?php //1.实例化一个Memcache对象 $mem=new Memcache(); //2. 连接到指定的memcache中 // $mem->connect("127.0.0.1",11211); //如果我们网站,需要多个memached缓存系统,如下使用分布式 $mem->addServer("192.168.1.100",11211); $mem->addServer("192.168.1.200",11211); $mem->addServer("192.168.1.222",11211); //创建多个memcache服务使用addServer 会根据负载均衡算法,自动放入每个服务器 $mem->add("name","zs",0,100); ?>
转载于:https://www.cnblogs.com/aini521521/p/6742601.html
php操作memcache缓存基本方法相关推荐
- 详解PHP操作Memcache缓存技术提高响应速度的方法
一般来说,如果并发量不大的情况,使不使用缓存技术并没有什么影响,但如果高并发的情况,使用缓存技术就显得很重要了,可以很好的减轻数据库和服务器的压力,当然解决高并发的技术有很多,这里只是以缓存的角度来说 ...
- PHP操作Memcache基本函数的方法
Memcache基本函数. Memcache ― Memcache类 Memcache::add ― 增加一个条目到缓存服务器 Memcache::addServer ― 向连接池中添加一个memca ...
- 使用Memcache缓存mysql数据库操作的原理和缓存过程浅析
1.首先明确是不是一定要上缓存,当前架构的瓶颈在哪里,若瓶颈真是数据库操作上,再继续往下看. 2.明确memcached和redis的区别,到底要使用哪个.前者终究是个缓存,不可能永久保存数据(LRU ...
- php memcache 类库,php操作Memcache的一个类库的方法(代码)
详细内容 本篇文章给大家带来的内容是关于php操作Memcache的一个类库的方法(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 代码如下:<?php /** * Cr ...
- redis缓存失效时间设为多少_java操作Redis缓存设置过期时间的方法
关于Redis的概念和应用本文就不再详解了,说一下怎么在java应用中设置过期时间. 在应用中我们会需要使用redis设置过期时间,比如单点登录中我们需要随机生成一个token作为key,将用户的信息 ...
- memcache 缓存的批量删除方案(转)
memcache 默认只支持使用delete(key)和 flush_all,这两种方法都太极端了,不能满足用户的特定需求,如:批量删除'aaaaaaaa_'开头的所有缓存,这个时候该怎么办? 1 g ...
- php操作memcache的使用测试总结
1.简介 memcache模块是一个高效的守护进程,提供用于内存缓存的过程式程序和面向对象的方便的接口,特别是对于设计动态web程序时减少对数据库的访问. memcache也提供用于通信对话(sess ...
- memcached java 多线程_springboot使用memcache缓存
Memcached简介 Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的 ...
- memcache缓存服务器(nginx php memcache mysql)
memcache缓存服务器(nginx php memcache mysql) 环境: 192.168.1.23 nginx+php 192.168.1.28 memcache 192.168.1 ...
最新文章
- 用户模式 linux救援单用户 虚拟机克隆和linux相互登陆
- 拼接路径优雅方式_章泽天“学生装”穿出高级感,缎面衬衫配小香风裙,温柔又优雅...
- 前端学习(3299):自定义hook
- 这九张动态图诠释什么是自然与科技的完美结合
- java控制层创建websocket_用Java构建一个简单的WebSocket聊天室
- 广东 职称英语计算机,现在评职称英语和计算机都不用考了
- 移动玩具(信息学奥赛一本通-T1453)
- Redis:复制,第3部分——redis-py和Python中的Redi哨兵一起使用
- [原创] 共享两个有用的网页布局表格
- linux 中开机启动过程简单
- 如何使用 macOS 帮助菜单?
- [收藏]Web创业的10条戒律
- linux vi命令的查询,linux vi命令模式详解
- matlab直方图匹配,直方图匹配 histogram match
- 吴恩达深度学习笔记(五)
- 洛谷 P5663 [CSP-J2019] 加工零件(最短路)
- java腰间盘终结者_大枣加大葱竟是腰椎间盘突出的终结者,一用一个好,腰不好不要错过...
- c++2048小游戏编写
- 通过组策略实现windows远程协助msra.exe
- C语言假设银行一年存利
热门文章
- python_str 字符串的所有方法
- 字符串截取mysql
- windows下python SSH-Client模块paramiko的安装与修改
- Ubuntu 12.04下配置JDK7
- SQL ROUND函数用法
- ASP.NET AJAX深入浅出系列课程(10):基于Microsoft AJAX Library扩展客户端组件.zip(10.77 MB)...
- javascript 刷新技巧
- 网络通信误码率测试软件,微机在通信线路误码率测试中的应用
- 图算法--深度优先/广度优先/最小生成树/最短路径
- 程序员c语言简历,程序员的简历该怎么写?当然是程序!