当前位置: 首页 > 开发知识 >

缓存就是web的一切

作者:游戏app开发公司 阅读: 发布时间:2024-08-18 17:00

摘要:如何提升网站的响应速度,我们可能会优化程序的代码结构,可能会改进代码的复杂逻辑,可能会优化程序语言,然而这些一切一切的优化,都不如缓存优化显得那...

web经历了从1.0到3.0的变迁,现在的它已经和最初的样子有了天翻地覆的变化,然而无论怎么变迁,人们对于web最关注的点还是它的速度。

_缓存是为了弥补什么_缓存是为了解决什么之间速度

一个5秒钟没有打开的网页,无论你的内容再怎么优秀,无论你的效果再怎么出色,大部分人都会选择关掉它,因为你浪费了用户的时间,而对于用户,时间是最宝贵的。

如何提升网站的响应速度,我们可能会优化程序的代码结构,可能会改进代码的复杂逻辑,可能会优化程序语言,然而这些一切一切的优化,都不如缓存优化显得那么出色。

缓存

什么是缓存,缓存就是一个可以保存查询结果的介质。

dns查询过后,我们可以缓存起来,实现dns的缓存。

图片预览之后,我们可以通过cdn缓存起来。

数据库查询出结果之后,我们可以把数据缓存到内存数据库redis中。

网页组装之后,我们可以缓存结果到varnish中。

缓存不是万能的,但是没有缓存是万万不能的。

总之,一切皆可以缓存。

时效性

不知道你有没有过这种体验,明明修改了css的样式,但是浏览器却使用原来的样式。这是因为浏览器缓存了css的样式,而这也是缓存的一个弊端,有些时候不能及时展示最新的数据情况。

_缓存是为了弥补什么_缓存是为了解决什么之间速度

有些时候我们已经修改了某个模板变量,但是程序依然没有改变,这是因为这个时候模板进行了文件缓存,而我们没有清除缓存。

数据库里面的值已发什么变化,但是从redis查询出来的数据依然是旧的数据。

这些缓存数据不一致的问题,都是平时我们使用缓存经常遇到的,而如何避免它们,是我们需要不断学习研究的。

更新缓存

虽然缓存的数据大部分时间是不变的,但是毕竟它也有需要变化的时候。更新缓存主要有下面的二种方法。

多级缓存和锁

我们都知道缓存有惊群的时候,就是当多个请求同时到来的时候,如果恰巧它们请求的这个缓存失效,那么所有请求将直接交给后台数据库去处理,这就会导致数据库压力过大而挂掉,而这就是惊群。也就是本应该一个请求去后台请求数据即可,现在多个请求同时去后台请求数据,造成了资源的浪费和数据库宕机。

为了避免这种情况,我们可以加一个锁,每次同一个key的缓存,只允许一个请求去后台查询数据库,其它的等待查询的结果。

缓存是为了弥补什么__缓存是为了解决什么之间速度

当然我们还可以设置多级缓存,就是一级缓存失效的时候,二级缓存依然可以拦截部分流量。

总之,就是让请求尽可能的落在缓存上面。

总结

无论是cms网站,还是电商网站,抑或是直播平台,一切都离不开缓存,缓存帮助我们使用最少的服务器资源却承载了最大的并发请求。

可以说掌握了缓存,才是掌握了web核心。

  • 原标题:缓存就是web的一切

  • 本文由游戏app开发公司小编,整理排版发布,转载请注明出处。部分文章图片来源于网络,如有侵权,请与迪集网络联系删除。
  • 微信二维码

    CLWL6868

    长按复制微信号,添加好友

    微信联系

    在线咨询

    点击这里给我发消息QQ客服专员

    点击这里给我发消息电话客服专员

    在线咨询

    免费通话


    24h咨询☎️:132-5572-7217


    🔺🔺 24小时客服热线电话 🔺🔺

    免费通话
    返回顶部