
1.缓存是什么?
用于加速数据交换,达到用时即取的作用。缓存也是优化的一种方式。
2.理解:
一般我们在进行访问请求网站流程:用户通过客户端(浏览器)发送请求到服务器端,服务器端连接到数据库读取数据,最后服务器把数据
信息返送到客户端。
加入缓存的理解是:
(1)服务器从数据库读取数据时,可以把数据存入内存中,下次用到同样数据,不需要再次连接数据库,直接从内存中读取。
(2)数据库(mysql)缓存:我们在做sql查询的时候,可以使用mysql自带的缓存机制,把更改不频繁的查询数据缓存起来,下次查询直接
在缓存内读取,大大的节约了查询时间。
(3)客户端和服务器端之间用上反向代理服务器,客户端发送请求,代理服务器会代替客户端请求服务器,之后把访问到的时结果缓存到本
服务器,下次客户端直接在反向代理服务器中把结果得到,极大的加快了访问速度。
(4)客户(浏览器)端的缓存:用户访问网站静态页面,可以把静态页面缓存到本地文件,下次访问直接从文件内读取,不需要走php解析
的过程。
3.优缺点:
优点: 1、 减少了对数据库的读操作,数据库的压力降低 2、 加快了响应速度
缺点: 1、 因为内存断电就清空数据,存放到内存中的数据可能丢失
2、 缓存中的数据可能与数据库中数据不一致
3、 内存的成本高
4、 内存容量相对硬盘小
3.更新机制:
缓存都有自己的最大数据储存量,当内存满(达到缓存最大储存量)时,根据自己不同的更新机制实现内存中的更替。
下面是三种更新机制:
LRU:根据时间,长时间不查询的数据会先被剔除
FIFO:是一种先入先出,最早的查询数据优先删除
LFO:根据查询次数,查询次数少的,从缓存中去除
【全文完】版权声明:
天津快三1、陕西弈聪网站内容中凡注明“来源:XXX(非陕西弈聪网站)”的作品,转载自其它媒体,转载目的在于传递更多信息,其中涉及的网站建设,网站优化,百度关键词优化,西安软件开发等技术细节并不代表本站赞同支持其观点,并不对其真实性负责。对于署名“陕西弈聪”的作品系本站版权所有,任何人转载请署名来源,否则陕西弈聪将追究其相关法律责任。
2、本站内容中未声明为“原创”的内容可能源自其它网站,但并不代表本站支持其观点,对此带来的法律纠纷及其它责任与我方无关。如果此内容侵犯了您的权益,请联系我方进行删除。
