说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

10个常见的缓存使用误区

HTML文档下载 WORD文档下载 PDF文档下载
在日常工作中,开发者经常利用缓存来进行优化站点或优化应用程序。但在实际应用中,在使用缓存时,总是那么不尽如意。这什么原因呢?本文,笔者收集了最为常见的十大缓存误区以及使用建议。

在日常工作中,开发者经常利用缓存来进行优化站点或优化应用程序。但在实际应用中,在使用缓存时,总是那么不尽如意。这什么原因呢?本文,笔者收集了最为常见的十大缓存误区以及使用建议。我们一起来看下 :

1.  依赖默认的序列化。

默认的序列化处理方式可能会消耗大量的CPU资源,特别是处理复杂类型数据时。所以建议要根据语音和环境的不同,采用最优化的序列化和反序列化方式。

2.  在单一缓存中存储大对象数据。

由于序列化和反序列化需要一定的资源开销,处于并发负载时,大对象图形数据的频繁读取有可能会让服务器的CPU崩溃。相反,不妨考虑把大对象数据打散为较小的子对象,之后再各自进行缓存。根据你的需求读取最小的数据单元。

3.  在不同进程间使用缓存共享对象。

出现竞态条件(Race conditions)时,当写进程也参与其中,同时刚好程序的某部分也访问同一缓冲对象,情况会变得更坏。采取外部锁机制是有必要的。

4.  储存数据后立马进行缓存。

千万不要仓促行事,即使是刚写入不久,当存储资源紧张时,一个缓存足以阻碍程序运行。所以用代码来进行缓存空值返回检查是很有必要的。

5.  使用嵌套对象存储全集合。

由于序列化的影响,执行一次全集合存储会导致程序运行变慢。有鉴于此,单独对独立对象进行缓存可以实现分开读取,减少序列化影响。

6.  对父子对象采取统一与单独混用的存储方式。

有时候一个对象可能拥有两个或更多的父对象。根据统一对象本身的键进行缓存以便不会把同一对象存储于不同地方,这样父对象可以按需访问子对象。

7.  对配置信息进行缓存。

使用进程的本地静态变量来存储配置数据。缓存数据访问是有代价的,所以要尽可能把影响减到最低。

8.  对活性对象进行缓存,例如:流,文件,注册信息或者网络。

不要尝试对上述等包含引用信息的活性对象进行缓存。因为当缓存数据被删除后,之前缓存的活性对象不会被删除,这样会造成系统资源泄漏。

9.  对同一对象采取多键存储。

这样或许在使用一个键和索引号来进行访问时带来便利。如果一个缓存是in-memory的,这样做是可行的,因为缓存中包含了同一对象的引用信息,也就是说一旦该对象发生变更,都可以透过两边的访问路径进行查看。如果是远程(外部)缓存,任何变更的发生都是不可见的,所以这样会导致同步问题的产生。

10.在连续存储中进行更新或删除后没有及时更新相应缓存对象。

在一个远程缓存中,数据以拷贝方式存储,所以当更新对象时,缓存不会被同步更新。缓存必须被明确指定,才能根据变更而进行更新。在in-memory缓存中,一个对象发生的变更是对所有人可见的。在删除时情况类似,删除一个对象时,在缓存中不会被同步删除。这取决于程序本身如何确保缓存对象被正确删除。

英文出自:highscalability

(译者/伍昆 责编/夏梦竹)

2014年首场百度轻应用高级训练营落幕 现场展示云端结合能力 销售易史彦泽:企业应用,自上而下的革命 专访寻医问药网创始人:轻应用背后的长尾效应 轻松打造品牌轻应用:实时Web App开发框架Clouda Intel强势入驻,Cloudera新一轮融资总额已达9亿美元 每个Web开发者必备的9个软技能 4月1日:闻名世界的苹果公司正式成立 AMD正在探索一种新颖的Linux开源驱动模式 QQ手机浏览器推出5.1播霸版 内置强解码引擎支持22种视频格式 Ceph浅析(上):概况与设计思想 IBM:你好,互联网 光网络SDN化的四大驱动力及两条路径 《近匠》酷传:解除App发布和监控痛苦 有道heX正式开源:用HTML5和NodeJS开发桌面应用 在3D空间创作:英大学生发明增强现实设计产品 2014年3月浏览器份额:Chrome终超Firefox 成市场第二大浏览器 2014年3月操作系统份额:Windows 7大涨,Windows XP仍未跌破27%大关 路透社:iPhone 6仅有4.7寸版本,将于5月量产,5.5寸遭冷冻 高端实战技术培训:OpenStack企业应用之路 据统计,Oracle已击败IBM跃居软件行业第二 【技术博客推荐】2014年值得关注的10个开源项目 Intel在深圳建立智能设备创新中心 将投入1亿美元 免费获得价值1200元Unity2014顶级盛会门票! IBM公布Softlayer中国业务落地时间表 推荐30款最佳的数据可视化工具 数据库迁移测试:选白盒还是黑盒? 东软发布首款英特尔架构企业级移动终端解决方案 英特尔与腾讯创立游戏创新实验室 推进RealSense技术 《近匠》系列沙龙之探寻绝密武器:移动跨平台开发 iOS走向开放:苹果新推iAd Workbench广告服务 腾讯薛伟:快速模型更新在精准广告推荐中的应用 dot menu是什么意思? 请教大侠为什么(333)这句不执行 如何将olecontainer载入的word文件全部显示,而不只显示第一页? 简单问题! 高手帮忙!如何通过服务器来自动查找、替换客户端文件 为何timer控件失效? @这个字符在C#中有何具体意义?不解 如何将sql server的检查约束延迟到Commit时 ado连接sql库问题 为何无法ping自己的地址呢? 滚动条判断 单个窗口程序可以运行,但是几个窗体连在一起就不可以了,好像是多线程的问题,请教各位 关于DBgrid再次求救 今天我好失败——斑竹过两天删除吧,让我宣泄一下 哎呀!!各位何必拉帮结派呢!!!这样不好啦!!影响水园大团结啊~~~没有加入帮派的人就很难在水园呆下去啦。。猪猪。。只有和他们沦为 CreateBitmap 与 CreateCompatibleBitmap 弹出一个窗体但是又不抢占其他窗体得焦点,怎么办? 利用DW-MX制作ASP.NET程序教程! vc中 调用 VB dll 时参数类型如何确定? 谢谢! 如何才能得知当前路径?比如VB的App.Path? Conn.OpenSchema怎么得到字段的信息? 一个进程写在共享内存中的数据被另一个进程读出去后的问题 大家开心开心吧! 笑过后体会体会...... asp与数据库连接的问题?急,急!(在线等待) 大家是怎么查VCL类库的类及函数的? 在线程里有无限循环时,好象不跳出循环就无法终止线程,是吗 UNIX的线程有没有类似Windows线程的消息队列和消息机制? 哪位大虾知道如何在网页中快速刷新显示后台计算的数据? 请问有谁知道PrinterResolution怎么和打印机对象连在一起呀, 偶有一个惊人的发现! 对话框中的按钮我怎么让它继承我自己的类? 请问有谁知道PrinterResolution怎么和打印机对象连在一起呀, 装了腾讯的浏览器现在删了 可是用cterm点击里面的网址还会调用腾讯的浏览器 如何修改注册表 那个键值? 电子邮件的问题 怎样给为我解答问题的注册用户打分? 谁做过这样的新闻系统! 为什么RealPlayer放有些网站的流媒体文件时会出错? 请问什么地方有软件开发标准。如国标,国军标等。 如何取得读网页时ie的状态,如正在下载,完毕等等? 朋友们能不能提供我一些关于VC读取文件操作的资料? 关于数据库服务器和备份的问题 win2kPRO 简单问题,高分相送!!在线发分,第一个答对者,定送此分!!!!!! c程序总出现"out of memory..." bzszp(蝎子)和ATCG(ATCG),谢谢!请问可以给我你们的E-mail吗?我以后还有些问题想请教你们! 如何设置java环境 更改工作站的下载等权限 制作一个修改程序外表的东西 怎样ENABLE 注册表编辑 MFC向导生成的基本对话框程序,一按回车就会退出,怎么设置都没有用.怎么办? 小弟下个学期就学vc了,想在这个暑假里好好的去接触接触但是不知道改看那些书好!还请~~~~~~~?高分!! 在月球表面能听见月球车开动的声音吗?到底能不能? 小刚同学用如图所示的电路研究电流跟电阻的关系.在实验过程中,当A、B两点间的电阻友欧姆更换为10欧姆后,他下一步的操作是( )A、记录电流表和电压表的示数 B、将变阻器滑片向右移动C 全球变暖的好处希望详细一些,因为是辩论会要用的材料所以希望能够详细 最好能配上数据,事实之类的东西能加以证明 (如果哪位大虾有心能给翻译成英文就更感谢了,中英对照的我会多加10 为什么雪会融化? 求5个人教版高一数学必修1函数的题目及解答过程 函数的表示法.求最佳解题方法,也欢迎各种解题思路. 雪为什么会融化 在水平上一轻质弹簧竖直放置,在它正上方,一物体自由落下,在物体开始压缩弹簧到速度为零的过程中,则A物体的动能不断减少 B物体所受的合力减少为零C弹簧的弹性势能不断少 D物体的机械守 请问株洲市环境最好的幼儿园, 关于烤箱的温度和烤箱温度计的温度烤箱温度调控,我始终找不到合适的方式控制,我买的温度计和烤箱的温度显示有些差异,比如我要用190度的温度,我要把烤箱调到215度左右才能到达预 函数的表示法 书24页A组1.打得好有多多分哦. 株洲属于哪种气候类型这可气候类型又有什么特点 烤箱温度计怎么使用我用的是ACA M-16A的烤箱,看到网上普遍说这个烤箱温度偏高,于是今天买了个温度计准备拿来测测.把温度计放在烤箱里,说是测温需要空转烤箱,再有我也只是想测试一下所 在第一次世界大战中,一名法国飞行员在空中飞行时,顺手抓住了机舱外的一颗子弹,这件事发生的条件是( )A子弹在空中浮着不动B子弹与飞机飞行的方向和快慢一样C子弹飞行得很慢D子弹与 日本太阳神塔英文翻译是什么 浓硫酸为什么只能干燥中性气体和酸性气体,而不能干燥碱性气体?什么是中性气体?什么是碱性气体?什么是酸性气体?怎样判别?请会的人教教我吧, 在平直的公路上,有甲乙丙三辆车,先后离开车站向东驶去,甲车速度最大,乙车丙车两车速度相等,下列说法正确的是( )A以甲车为参照物,乙车向东,丙车向西行驶B以甲车为参照物,乙丙两车都 一个重6N的实心物体.一个重6N的实心物体,用手拿着使它刚好浸没在水中,此时物体排开的水重是10N,则物体受到的浮力大小为多少N? HCl气体是酸性还是碱性或中性?气体! 1.一物体容积一般小于它的体积( )2.墨水瓶的体积就是墨水瓶的容积( )3.仓库中小麦的体积一定等于仓库的容积( ) 一个实心物体,重为6N,当它三分之一的体积浸在酒精中时,测力计示数为6.6N.求1、物体的密度.一个实心物体,重为6N,当它三分之一的体积浸在酒精中时,测力计示数为6.6N.求1、物体的密度.2、物体 生物圈=什么+什么 ? 生态系统=什么+什么=(什么+什么+什么)+什么 初一生物问题求各位大神解答! HCl 气体显酸性吗? 1.图文简述的受热过程,分析大气的热力作用是"地面是近地面大气主要直接的热源"的原因.2.简述月球表面的气温日表差大于地球表面的原因3.图文简述热力环流的形成过程并比较B和A,A’ B'死 初一生物题(生物圈)蚯蚓一般营穴生活,但夏季雨后蚯蚓在地面上活动,原因是()A.土壤中蚯蚓缺乏食物B.蚯蚓得不到足够的氧气C.喜欢雨后晒太阳D.承受不了土壤的压力在鱼苗长途运输的前 雪融化之后阅读答案雪融化之后是什么呢?  是不堪的泥泞?湫隘破败的小巷里,歪歪斜斜地印着行人的脚印,或深或浅的印子里溢满了泥水,几只调皮的小黄鸭嘎嘎地走过时,身上开满了一朵朵 夏季天气特点 生物圈中最大的生态系统是什么?A 草原生态系统 B 城市生态系统 C 森林生态系统 D 海洋生态系统 即:生态系统的组成成分中,生物与环境缺一不可.将“草→鼠→猫头鹰”看作是一个生态系统,还应该添补的成分是() 生石灰与水反应生成氢氧化钙,再加水,搅拌后静置,观察得到什么现象? 生物部分和非生物部分组成的是生态系统还是生物圈?如果给你一个食物链的图,问你还需要什么才能组成一个完整的生物圈?或者需要什么才能组成一个完整的生态系统? 雪为什么先融化下面的?最好说明用到的理论. 骑自行车上坡前一般要加紧蹬几下,这是为了 ( ) A.增大惯性 B.减小阻力 C.增大动能 D.增大势能 初一生物生物圈中的动物试题急求.初一生物济南版的初一生物上册的 别给我初二的谢谢 快的我在加50分 如果只提供刻度尺、三角尺,如何测出一个装有大半瓶的墨水瓶的容积?如果只提供刻度尺、三角尺,如何测出一个装有大半瓶的圆柱形墨水瓶的容积? 在蒸发皿中放1小块生石灰,加少量水,搅拌,有什么现象发生?(如何描述) 库仑(C)是什么单位,其意义是什么? 雪融化了是什么? 取少量过氧化钙放入试管,加水,会有什么现象 关于水对生命体及经济发展有什么影响 现有一个墨水瓶,一个瓶盖,一把刻度尺和一些水,试粗略测出墨水瓶容积 与大气的热力作用有关的自然现象 你能画出几个面积是12平方厘米且边长是整厘米的长方形 现有一个墨水瓶、一个瓶盖、一把刻度尺和一些水,试粗略测出墨水瓶的容积 湖南属于什么气候类型,该气候有什么特点,主要分布在世界什么地方. 生态系统中各种生物的 和 相对稳定,原因是生态系统具有一定的 能力,但这种调节能 现在一个墨水瓶,一个瓶盖,一把刻度尺和一些水,试粗测出墨水瓶的容积大神们帮帮忙 选择台灯要注意的问题? 物理总是考不好,好苦恼啊 5555~5555~非晶体没有固定的熔点,那么它有没有熔点,写仔细一点,我不聪明哦! 若给你刻度尺,三角板,如何测量装有一大半的墨水瓶的容积 选择台灯应该注意些什么? 库仑是如何定义的? 大气的热力作用原理是什么? 买台灯要注意什么比如说要多少瓦,什么灯泡,LED还是白炽灯,灯架多大够学习这些 等物质的量的CH4与Cl2恰好反应时,生成CH3Cl与HCl为什么错 已知函数f(x)=(x²+4)/x(x≠0)是奇函数,且满足f(1)=f(4)证明:函数f(x)在区间(0,2】单调递减,在区间(2,+∞)单调递减(PS:原来前面还有1小题,我已经把那1小题的答案当作已知条件打在上面 作为儿童使用的台灯要充分注意孩子在使用过程中的安全问题,那么如何的选择这个儿童台灯才符合标准? 在月球表面,航天员能清楚的听道月球车开动的声音麽?快 为了传递信息,我国古代周朝形成邮驿制度,到宋朝时设金牌,银牌,铜牌三种邮递快慢等级."金牌"一昼夜(24h)行500里(1里=517米),每到一个驿站换人换马接力传递.下面所列速度与"金牌"的平均速度 由于大气的热力作用 ③产生的温室效应,影响到人类的生存 ④“高处不胜寒”哪句不正确,为什么?我觉得是"③产生的温室效应,影响到人类的生存 "错了。
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘