SWR " stale-while-revalidate " 立即使用缓存数据 + 后台异步刷新

在软件开发中,SWR 是 " stale-while-revalidate " 的首字母缩写,这是一种在网络应用(尤其是Web应用)中用于数据获取和缓存的策略。

这个策略最早由 Next.js 团队提出并在其数据获取库 next/swr 中实现了这个思想。

SWR 的工作原理如下:

  1. 立即使用缓存数据
    当页面首次加载或数据需要更新时,SWR 会优先尝试从缓存中获取数据。如果有缓存数据,即便它可能不是最新数据(stale),也会立即呈现给用户,从而提供更快的响应速度和更好的用户体验。

  2. 后台异步刷新
    同时,SWR 会发起一个后台请求去服务器获取最新的数据。一旦服务器返回了新数据,SWR 将更新缓存并重新渲染 UI。

通过这种方式,SWR 既保证了用户能够快速看到页面内容(即使数据并非最新),又能确保最终用户看到的是最新数据,从而在延迟加载和数据新鲜度之间取得平衡。

这种策略非常适合实时性要求不高但又需要保持数据尽可能更新的应用场景。


__EOF__

本文作者龙陌
本文链接https://www.cnblogs.com/longmo666/p/18037956.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   龙陌  阅读(163)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示