memcache使用
来源:互联网 发布:unity3d人物模型下载 编辑:程序博客网 时间:2024/05/23 01:25
因为磁盘读写性能相对内存较慢,为了加快查询数据速度,为了充分利用内存资源。 我们就将数据存放内存中。
缓存如何做:
首先php先从缓存中读取数据,如果缓存中没有拿到想要数据,才从数据库中查询,得到数据后将数据放到缓存中,然后再返回给PHP。 如果缓存中有想要的数据,直接从缓存中得到,就不查询数据库。
* 缓存分类
按照存放介质分类:
1. 内存缓存
将数据放到内存中就叫内存缓存
2、 文件缓存
将数据放到文件中就叫文件缓存
3. 数据库缓存
一般不怎么使用
按照存放内容分类:
1、 数据缓存
数据缓存中只有从数据库拿出来的数据
2、 页面静态化
就是将动态页面变成静态页面。 页面静态化中包含数据: 1、 HTML代码、js、css代码 2、 从数据库拿出来的数据
* 选择哪种缓存?
内存缓存还是文件缓存?
内存缓存: 优点: 1、 读写快
缺点: 1、 内存相对磁盘成本高 2、 内存空间小 3、 内存断电,内存中的数据就丢失
文件缓存: 缺点: 1、 读写相对内存缓存慢
优点: 1、 成本相对内存低 2、磁盘空间大 3、 数据不会丢失
所以, 如果数据比较小,并且是热数据(经常被操作的数据就是热数据),应该选择内存作为缓存。 一般热数据大小相对较小, 热数据有: 1、 热销商品数据 2、 首页的商品数据 3、 头条
当数据较大,并且热度没有那么高,就应该选择文件作为缓存。
数据缓存还是页面静态化:
如果一个页面变动不大,就应该选择页面静态化,
如果一个页面中数据变动较大,应该选择数据缓存。
一般如果是文章详情,应该选择做页面静态化。
如果是商品详情页,一般选择的数据缓存。
***********************************
## Memcache
Memcache可以操作内存,就是可以将数据存到数据,也可以从内存把数据拿出来。
它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。
##php操作Memcache
php要想操作memcache,必须安装相关memcache扩展。安装好扩展后,就可以使用扩展提供的Memcache类
## 缓存
原理:先查询缓存中有没有要的数据,如果有,就直接返回缓存中的数据。
如果缓存中没有要的数据,才去查询数据库,将得到数据先存放到缓存中,然后再返回给php。
优点: 1、 减少了对数据库的读操作,数据库的压力降低 2、 加快了响应速度
缺点: 1、 因为内存断电就清空数据,存放到内存中的数据可能丢失
2、 缓存中的数据可能与数据库中数据不一致
3、 内存的成本高
4、 内存容量相对硬盘小
缓存分类:
1. 按照存放的介质分类
a. 内存 b. 硬盘
存放到内存中的数据,叫做内存缓存
存放到硬盘中的数据,叫做文件缓存
选择内存缓存还是文件缓存:
a. 根据你的数据特点来选择。
如果你数据比较小,并且是热门数据(热数据),应该选择内存缓存。
如果你数据比较大,应该选择文件缓存。
2. 按照存放数据来分类
a. 数据缓存 b. 页面静态化
数据缓存: 数据缓存只会将从数据库中查询出来的数据缓存 。
页面静态化: 将动态的页面变成静态的页面。产生的静态页面应该保存到文件中。
MySQL本身性能就相对比较很慢。因为MySQL数据最终存放到硬盘上。
所以MySQL的读(select)写(update insert delete)性能都相对不高。
**************************************
## Memcached
memcached他是一个软件,通过memcached可以让你操作内存。就是可以将数据存放到内存中,也可以拿出来。
* 如何看memcached是否启动
netstat -tlunp | grep 11211
* 如何登录到memcache中
//将数据存放到memcached中
set key 1 3 2
//从memcache中获取数据
get key
* memcached提供的命令
### php要想操作memcache,必须安装扩展
### 缓存时间肯定不能是永久缓存。 缓存时间如何设置
1. 缓存时间最好在后台可以修改。
2. 缓存时间能够设置成一样吗?
不行,原因: 如果缓存过期了,一起查询数据库,数据库压力大。这种情况叫做缓存雪崩。
缓存时间最后有一个时间差。
- memcache 使用
- memcache 使用
- memcache使用
- 初识Memcache---(2)使用memcache
- memcache使用及安装
- memcache使用及安装
- memcache 使用参考
- php使用memcache
- php 操作 memcache 使用
- memcache Client 使用
- PHP-Memcache 使用范例
- PHP memcache使用
- memcache(使用telnet操作)
- memcache(使用telnet操作)
- memcache使用及安装
- memcache(使用telnet操作)
- memcache telnet 使用命令
- php memcache使用
- UVA
- js继承
- JAVA UDP的使用
- Hadoop相关
- 使用JS提高性能--选择器篇
- memcache使用
- 实现客户端与服务端之间传输json数据
- php查询MySQL时排序后前n项显示出来的方法
- RAFT算法随想
- 4-7绝对定位的参考点的就近原则
- 前端学习
- 用两个栈实现队列
- H5面试----为什么要初始化 CSS 样式
- docker系列三: docker安装tomcat