Memcache 学习笔记(二)---- PHP 脚本操作 Memcache 服务器
PHP 脚本操作 Memcache 服务器
一、PHP脚本操作Memcache方法
使用 PHP 脚本操作 Memcache,在 PHP 手册中有详细的介绍,我们可以实例化 Memcache 类,根据需求调取对象方法。Memcached 是较 Memcache 更加
强大的类库,功能更多,这里只介绍Memcache。
部分方法介绍:
1.Memcache::add — 增加一个条目到缓存服务器
2.Memcache::addServer — 向连接池中添加一个memcache服务器
3.Memcache::close — 关闭memcache连接
4.Memcache::connect — 打开一个memcached服务端连接
5.Memcache::decrement — 递减元素的值
6.Memcache::delete — 从服务端删除一个元素
7.Memcache::flush — 清洗(删除)已经存储的所有的元素
8.Memcache::get — 从服务端检回一个元素
9.Memcache::getExtendedStats — 缓存服务器池中所有服务器统计信息
10.Memcache::getServerStatus — 用于获取一个服务器的在线/离线状态
11.Memcache::getStats — 获取服务器统计信息
13.Memcache::increment — 自增一个元素的值
14.Memcache::pconnect — 打开一个到服务器的持久化连接(设置要考虑访问并发率)
15.Memcache::replace — 替换已经存在的元素的值
16.Memcache::set — Store data at the server
17.Memcache::setCompressThreshold — 开启大值自动压缩
18.Memcache::setServerParams — 运行时修改服务器参数和状态
二、PHP 脚本应用 Memcache 基本思想(Memcache 工作流程)
样例:当我们需要获取某表中的用户信息,我们使用 URL 地址 传参(GET方式)向 Memcache 服务器请求数据。根据 Memcache 服务器本身的工作特点,当其中没有存储请求相应的值
时, Memcache 会向数据库请求数据,成功获取数据后回馈客户端的同时,在自身内部也存储一份,以便下次相同请求,这样数据就会直接从内存调取,极大的提升请求效率,减轻数据库的压力。
<?php
// 实例化 Memcache
$m = new Memcache;
// 链接 Memcache 服务器
$m->connect('localhost',11211);
// 获取 GET 值
$id = $_GET['id'];
// 定义 sql 结构化语句
$sql = "SELECT * FROM user WHERE id=".$id;
// 加密处理
$key = md5($sql);
// 检查 Memcache 中是否存储数据
if(!$m->get($key))
{
// 实例化PDO链接数据库
$pdo = new PDO('mysql:host=localhost;dbname=test;charset=utf8;port=3306','root','');
// 查询数据
$stmt = $pdo->query($sql);
// 解析结果集
$data = $stmt->fetch(PDO::FETCH_ASSOC);
// 设置数据到 Memcache 中
$m->set($key,$data);
}
var_dump($m->get($key));
PHP操作Memcache基本思想(Memcache工作流程应用)
Memcache 学习笔记(二)---- PHP 脚本操作 Memcache 服务器的更多相关文章
- git的学习笔记(二):git远程操作
1.创建ssh key ssh-keygen -t rsa -C "your_email@example.com" 执行命令后会在用户的家目录生成.ssh的隐藏文件夹,文件夹里有公 ...
- python学习笔记(二)、字符串操作
该一系列python学习笔记都是根据<Python基础教程(第3版)>内容所记录整理的 1.字符串基本操作 所有标准序列操作(索引.切片.乘法.成员资格检查.长度.最小值和最大值)都适用于 ...
- JavaWeb学习笔记二 Http协议和Tomcat服务器
Http协议 HTTP,超文本传输协议(HyperText Transfer Protocol),是互联网上应用最为广泛的一种网络协议.所有的WWW文件都必须遵守这个标准.设计HTTP最初的目的是为 ...
- nodejs学习笔记<二> 使用node创建基础服务器
创建服务器的 server.js 内容. var http = require("http"); // 引用http模块 http.createServer(function(re ...
- memcache课程---2、php如何操作memcache
memcache课程---2.php如何操作memcache 一.总结 一句话总结: windows下装好memcache.exe,装好memcache的php扩展之后,然后使用memcache函数库 ...
- amazeui学习笔记二(进阶开发5)--Web 组件开发规范Rules
amazeui学习笔记二(进阶开发5)--Web 组件开发规范Rules 一.总结 1.见名知意:见那些class名字知意,见函数名知意,见文件名知意 例如(HISTORY.md Web 组件更新历史 ...
- AJax 学习笔记二(onreadystatechange的作用)
AJax 学习笔记二(onreadystatechange的作用) 当发送一个请求后,客户端无法确定什么时候会完成这个请求,所以需要用事件机制来捕获请求的状态XMLHttpRequest对象提供了on ...
- [Firefly引擎][学习笔记二][已完结]卡牌游戏开发模型的设计
源地址:http://bbs.9miao.com/thread-44603-1-1.html 在此补充一下Socket的验证机制:socket登陆验证.会采用session会话超时的机制做心跳接口验证 ...
- 树莓派学习笔记——使用文件IO操作GPIO SysFs方式
0 前言 本文描写叙述假设通过文件IO sysfs方式控制树莓派 GPIO端口.通过sysfs方式控制GPIO,先訪问/sys/class/gpio文件夹,向export文件写入GPIO编号, ...
随机推荐
- openstack中安装包与组件
keystone openstack-keystone:验证服务,openstack 中的所有组件的验证以及用户验证,权限,目录等服务. python-openstackclient:命令行,安装以后 ...
- java 使用idea将工程打成jar并创建成exe文件类型执行
https://blog.csdn.net/weixin_38310965/article/details/80392767
- [HDU4089]Activation(概率DP)
HDU4089 题意:有n个人排队等着在官网上激活游戏.Tomato排在第m个. 对于队列中的第一个人.有一下情况: 1.激活失败,留在队列中等待下一次激活(概率为p1) 2.失去连接,出队列,然后排 ...
- Serical Port
QextSerialPort 虽然这次不用写串口,但今后可能要用到的三方类库. 这个帖子下面普及了串口的概念.VC++模块的部分
- git 换行符替换
https://help.github.com/en/articles/dealing-with-line-endings rm .git/index git reset https://github ...
- 本科生毕业论文->计算机类(1)
写在前面:作为一个计算机类学生,本文只是面向计算机类本科论文进行了一些小经验总结,每个学校的论文要求不一致,具体的参考规范可以看学校的通知,毕业论文作为毕业的一个重要审核标准,写好毕业论文是非常重要的 ...
- Ubuntu中screen命令的使用
参考GNU's Screen 官网:GNU's Scree screen的安装 sudo apt install screen 新建窗口1)可直接通过命令screen新建一个窗口,并进入窗口.但通过这 ...
- cucumber & selenium & bddtest
目录 1.Cucumber介绍 refer link: 2.使用步骤 2.1 引入依赖 2.2新建test.future文件 2.3在resource目录下创建cucumber.bat,执行bat,c ...
- 转 shell中$(( )) 与 $( ) 还有${ }的区别
原文 http://blog.zol.com.cn/2322/article_2321763.html $( ) 与 ` ` (反引号)在 bash shell 中,$( ) 与 ` ` (反引号) ...
- lua热重载
热重载,就是不重新开unity让代码的变化直接看出来,一般在开发时候使用 lua中通过require导入的文件,最终都存在package.loaded这个table中.require会判断是否文件已经 ...