面试向:How to do Caching in Springboot?

本文探讨了在微服务中缓存的重要性,特别关注服务器缓存,区分了本地、远程和分布式缓存,并重点介绍了Redis与Memcached的优缺点及在Web开发中的选择。还涉及了缓存更新机制和过期策略在实际项目中的实施。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先我们要明确 Cache到底是在cache什么?

cache是缓存HTML页面?还是缓存数据库查询结果?
在微服务架构中 缓存又需要有哪些独特的地方需要用到?

首先我们先广义的说一下缓存在软件开发中的用处:
缓存能够大大加快我们的应用相应的速度。就是相当于空间换时间。
缓存的数据一般是:频繁访问的数据,储存耗时的结果,减少磁盘的IO。
缓存有这么几个分类:
客户端缓存(静态文件:html, css,图片等等)
代理服务器缓存:常见的是CDN缓存。
服务器缓存:memcache, redis缓存就是指服务器缓存。
数据库缓存。
应用层缓存(和开发人员关系最大–嵌入式缓存【hashmap】或者是分布式缓存【memcache】)

细说服务器缓存:
分为三种:
local cache(local means each server- we have in-memory-cache etc), remote cache(remote for every server, means we have one specific server for cache), distributed cache(have multiple cache server for caching.)

in memory cache:
有两种,一般都是采取成熟的第三方服务:
memcached: 只支持增删改查,只支持string 只支持string.不支持持久化
redis:支持很多类型数据,支持持久化,支持分布式。虽然memcahe性能好 但是redis的功能远远不止缓存。所以很多都用

Web项目开发中用到的缓存技术

如何实现缓存?
重点:缓存更新机制和缓存过期策略。
这个会开一个新的文章写。

在微服务系统中应该注意什么?
应该注意缓存应该是分布式的 分布式缓存要注意的地方比较多。所以我们一般选用现成的第三方缓存数据库如redis 或者memcache.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值