关于缓存的几点注意事项(个人笔记)

最近在做一个投票系统,关于缓存的使用上稍微思考了下,总结了以下几点:

1.缓存的数据,一般为数据库查询出来的数据。要么就是大数据,要么就是访问频率很高的数据。

2.缓存只是一个提高效率的手段,但不保险,编写代码的时候,要考虑万一缓存不命中的情况,而不知只单纯的从数据库中提取数据。一般的思路是,查询缓存数据,如果没有命中,则查询数据库并把结果写入缓存。

3.如果缓存的数据更新了,注意清除缓存(高访问频率)或是更新缓存(大数据)。

关于缓存的一些关键词:持久化、tair

时间: 2024-10-05 13:03:26

关于缓存的几点注意事项(个人笔记)的相关文章

缓存使用的一些注意事项

最近在项目中使用了很多缓存技术,包括局部缓存,远程集中式缓存,分布式缓存,在缓存的使用中也发现一些问题,整体总结如下: 1 使用局部缓存要注意内存溢出 一般局部缓存使用Map来实现,很容易无限制的往Map中填入数据,导致内存溢出.最好的方法就是使用SoftReference引用对象,而不是强引用对象 2 在分布式环境下使用局部缓存,如果缓存是同一类数据,比如同一张表的数据库配置,则需要考虑一个同步措施,保证各个集群之间的数据是在一致的. 一般情况下,需要每台集群机器定时刷新缓存,在刷新缓存的时候

单字节的FIFO缓存(30天自制操作系统--读书笔记)

从今天起,写一些读书笔记.最近几个月都在看<30天自制操作系统这本书>,书虽说看的是电子书,但可以花钱买的正版书,既然花费了金钱,就总得有些收获. 任何人都不能总是固步自封,想要进步就得学习别人的知识,对于程序员而言,最简单的方法即是学习别人的代码. 今天的标题是“单字节的FIFO缓存”,其实就是做一个FIFO,看名字就知道了.也就4个函数和1个相关结构体,这样的小代码在嵌入式系统中很常用,也会很好用. 1.相关数据结构体 struct FIFO8 { unsigned char *buf;

oracle 事务处理 注意事项(笔记)

事务:一个独立的逻辑工作单元.它有特定的一系列必须作为一个整体一起成功或者失败的SQL语句组成.是一个要么全有要么全无,很个性的一个东东. 事务的四大属性——ACID属性:原子性(atomicity).一致性(consistency).隔离性(isolation).持久性(durability) 原子性:事务中的所有任务都必须执行,或者不执行.不存在部分事务. 一致性:事务将数据库从一个一致性状态带到另一个一致性状态. 隔离性:一个事务所带来的影响知道该事物提交之前对其他事务来说都是不可见得.

锁的优化及注意事项(读书笔记)

有助于提高锁性能的几点建议 减少锁的持有时间 真正需要同步加锁的时候在加锁,减少锁的持有时间有助于减低锁冲突的可能性,进而提升系统的并发能力, 减少颗粒度,所谓减少颗粒度就是指缩小锁定对象的范围,从而减少锁冲突的可能性,进而提升系统的并发能力,问题在于类似于size()获取全局信息的方法调用并不频繁时,这种减少颗粒度的方法才能真正意义上提高系统吞吐量.(分割数据结构实现) 读写分离锁替换独占锁,读写锁是对系统功能点的分割 ReadWriteLock 在读多写少的场合,读写锁对系统性能是很有好吃的

整理的前端注意事项和笔记

/*谷歌浏览器10像素字体(适用微信浏览器)*/ font-size:14px; -webkit-transform:scale(0.71); transform:scale(0.71); //点击div以外,div消失 $('.search-a').on('click',function(e){ $('#condition').slideDown(200); e ? e.stopPropagation() : event.cancelBubble = true; }) $('#conditio

浏览器缓存注意事项

缓存配置的一些注意事项 ① 只有get请求会被缓存,post请求不会 ② Etag 在资源分布在多台机器上时,对于同一个资源,不同服务器生成的Etag可能不相同,此时就会导致304协议缓存失效,客户端还是直接从server取资源.可以自己修改服务器端etag的生成方式,根据资源内容生成同样的etag. ③ 系统上线,更新资源时,可以在资源uri后边附上资源修改时间.svn版本号.文件md5 等信息,这样可以避免用户下载到缓存的旧的文件 ④ 观察chrome的表现发现,通过链接或者地址栏访问,会先

浏览器 HTTP 缓存原理分析

转自:http://www.cnblogs.com/tzyy/p/4908165.html 浏览器缓存原理: 1.浏览器第一次访问服务器资源/index.html,在浏览器中没有缓存文件,直接向服务器发送请求,服务器返回200 OK 实体中返回index.html文件内容,并设置一个缓存过期时间,一个文件修改时间,一个根据index.html内容计算出来的实体标记Entity Tag简称ETag,浏览器将/index.html路径的请求缓存到本地 2.浏览器第二次访问服务资源/index.htm

浏览器HTTP缓存原理分析

http://www.cnblogs.com/tzyy/p/4908165.html 章节目录 浏览器缓存原理 文字版描述 一图以蔽之 缓存相关首部字段 request缓存相关首部字段 response缓存相关首部字段 实体首部缓存相关字段 缓存配置的一些注意事项 以前项目中遇到了很多浏览器缓存相关的问题,也在网上查过资料,搞过服务器的配置,来确保客户端加载服务器资源的速度和资源有效性.最近仔细看了下http协议中和缓存相关的一些属性,总结一下. 浏览器缓存原理 文字版描述 ①浏览器第一次访问服

wordpress博客安装redis缓存

Redis是一个开源.支持网络.基于内存的key-value存储系统,类似memcached,性能极高,支持超过100K+ 每秒的读写频率,一些大型的网站例如ITeye(JavaEye)和CSDN现在都用到了Redis. 与memcached相比,Redis提供了持久化存储,重启了服务器后memcached需要重新创建缓存,而Redis依赖快照进行持久化,即使服务器刚开机启动也不会导致负载陡增.Redis缓存比较适合大流量的Wordpress. 当你的WordPress中的文章达到上万篇,随着流