加入收藏 | 设为首页 | 会员中心 | 我要投稿 南通站长网 (https://www.0513zz.cn/)- 专有云、图像技术、经验、数据治理、专属主机!
当前位置: 首页 > 站长资讯 > 传媒 > 正文

机器人是如何抗击新冠肺炎疫情的?

发布时间:2021-02-21 17:54:13 所属栏目:传媒 来源:互联网
导读:1. 前言:为什么要用缓存? 用户数增长,架构演变,数据量增大,开始考虑怎么去做性能优化。 而性能优化的第一定律就是:优先考虑使用缓存。 2. 缓存的基本原理 2.1 缓存的作用 1、加快数据访问速度; 2、减轻后端应用和数据存储的负载压力。 2.2 缓存的特征 1

1. 前言:为什么要用缓存?

用户数增长,架构演变,数据量增大,开始考虑怎么去做性能优化。

而性能优化的第一定律就是:优先考虑使用缓存。

2. 缓存的基本原理

2.1 缓存的作用

1、加快数据访问速度;

2、减轻后端应用和数据存储的负载压力。

2.2 缓存的特征

1、命中率:命中率 = 命中数 / 请求数。

这是衡量缓存有效性的重要指标。命中率越高,表明缓存的使用率越高。

2、最大元素(最大空间)。

一旦缓存中元素数量超过这个值(或者缓存数据空间超过其最大支 持空间),将会触发淘汰策略。

3、淘汰策略。

这个我前文其实已经说过。

FIFO(First In First Out) 先进先出,淘汰最早数据。

判断存储时间,离目前最远的数据优先淘汰。

LRU (Least Recently Used)剔除最近最少使用。

判断最近使用时间,离目前最远的数据优先淘汰。

LFU (Least Frequently Used)剔除最近使用频率最低的数据。

在一段时间内,数据被使用次数最少的,优先淘汰。

具体可以看这篇文章常见的缓存剔除策略 & LRU与LFU的区别。

3. 缓存的分类

缓存的主要手段有:浏览器缓存、CDN、反向代理、本地缓存、分布式缓存、数据库缓存。

在解读《大型网站技术架构》一文中,其实已经说到过。

我们一般说做性能优化时是指后三个:本地缓存、分布式缓存、数据库缓存。

前面三个缓存策略属于网站前端的范畴。

从硬件介质上来看,缓存分为内存和硬盘两种。

但从技术上,又可以分成内存、硬盘文件、数据库。

我们通常意义上说的缓存一般都是基于内存的。

因为只有内存,才足够快。

数据库缓存一般也是基于内存的,但这个活一般是DBA在配置数据库的时候就设置好了。

对于大部分开发人员来说,我们一般所说的缓存优化都是基于本地缓存(ocal cache)和远程缓存(remote cache)。

而现在远程缓存这个词一般也被分布式缓存这个常用方案所代指。

4. 什么时候使用缓存?

4.1 缓存的使用判断

什么时候使用缓存的判断其实比较简单,抓住两点就行了:

1、是不是热点数据?

所谓热点,一般是遵循二八定律,即百分之八十的访问集中在百分之二十的数据上。

2、是不是读比写多?

这个比例一般为2:1。

4.2 什么时候不应该使用缓存?

反过来就是了。

1、没有热点数据不要使用缓存,也没什么意义。

因为内存资源是比较宝贵的。

2、频繁修改的数据不要使用缓存。

因为可能写入后还来不及读取就已失效或被淘汰,并且容易产生脏读。

4.3 合理使用缓存

最后,最重要的是确认是否需要使用缓存?

确定了后,再选择合适的缓存工具及使用缓存的方式。

5. 缓存时常见的一些问题

使用缓存优点很多,但也存在一些很常见的问题。双刃之剑,就看怎么用了。

列举一些我们工作中常见的一些缓存问题,并给出至少一种解决方案。



(编辑:南通站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读