使用缓存应该考虑的问题

200 篇文章 0 订阅
118 篇文章 1 订阅

使用缓存应该考虑的问题

显然,对数据库中所有的数据都实施缓存是最简单的方法,大多数情况下,这可能也是实际开发中最常采用的模式(节省了开发人员的大量脑细胞)。

但是在某些情况下,这样的方式反而会对性能造成影响,如对于以下情况:一个电信话务系统,客户可以通过这套系统查询自己的历史通话记录。

这个案例中,对于每个客户,库表中可能都有成千上万条数据,而不同客户之间,基本不可能共享数据(客户只能查询自身的通话记录),如果对此表施以缓存管理,那么可以想象,内存会迅速被几乎不可能再被重用的数据充斥,系统性能急剧下降。

因此,在考虑缓存机制应用策略的时候,我们必须对当前系统的数据逻辑进行考察,以确定最佳的解决方案。

如果数据满足以下条件,则可将其纳入缓存管理。

1.数据不会被第三方应用修改

2.数据大小在可接受的范围之内

3.数据更新频率较低

4.同一数据可能会被系统频繁引用

5.非关键数据(关键数据,如金融账户数据,财务数据)

在使用ORM Bee框架时, 

应该把不会被更新的固定配置表,设置在:

#永久缓存表的列表, 表名不区分大小写
#bee.osql.cache.forever=constant

极少可能更新的数据设置在:

#只有更改时才会清除缓存,以便同步新的值到缓存. 表名不区分大小写
#bee.osql.cache.modifySyn=para

不使用缓存的数据,放在(是1,2,3,5相反面的数据,不使用缓存,应该在此设置):

#不缓存表的列表, 表名不区分大小写.视图强烈建议不放缓存,因会产生脏数据.
#bee.osql.cache.never=user

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值