五、前端缓存

五、前端缓存

1.  Squid

Squid作为一个前端缓存,通常部署在网络的离用户最近的地方,通过缓存网站的页面,使用户不必每次都跑到服务器去取数据,提高系统响应和性能。实现应该比较简单:一个带有存储功能的代理。用户访问页面的时候,由它代理,然后存储请求结果,下次再访问的时候,查看是否需要更新,有更新就去服务器取新数据,否则直接返回用户页面。squid的优势在于完整的庞大的cache技术资料,和很多的应用生产环境

2.  Varnish

varnish本身的技术上优势要高于squid,它采用了“Visual Page Cache”技术,在内存的利用上,Varnish比Squid具有优势,它避免了Squid频繁在内存、磁盘中交换文件,性能要比Squid高。 varnish是不能cache到本地硬盘上的。还有强大的通过Varnish管理端口,可以使用正则表达式快速、批量地清除部分缓存

3.  ngnix

nginx是用第三方模块ncache做的缓冲,其性能基本达到varnish,但在架构中nginx一般作为反向(静态文件 现在用nginx的很多,并发能支持到2万+)。在静态架构中,如果前端直接面对的是cdn活着前端了4层负载的话,完全用nginx的cache就够 了。

前端离线缓存可以通过HTML5的离线存储(Application Cache)来实现。该机制是基于一个manifest文件的缓存机制,通过在manifest文件中定义需要缓存的文件,浏览器会将这些文件保存在本地。当网络处于离线状态时,浏览器会使用离线存储的数据进行页面展示。这种机制主要适用于内容变动少、相对固定的场景下。 另外,还可以借助Service Worker和cacheStorage缓存来实现离线缓存。Service Worker是一种在浏览器后台运行的脚本,可以拦截网络请求并缓存响应,从而实现离线缓存。cacheStorage是浏览器提供的API,用于管理缓存的存储空间。 在实际开发中,可以使用Workbox webpack Plugins等工具来简化离线缓存的配置和管理。这些工具可以帮助我们生成Service Worker脚本,并提供一些方便的API来管理缓存和离线状态。 总结起来,前端离线缓存可以通过HTML5的离线存储、Service Worker和cacheStorage缓存等技术来实现。这些技术可以提供离线访问和更好的用户体验。 #### 引用[.reference_title] - *1* *2* *3* [【万字长文】前端离线化/长缓存方案](https://blog.csdn.net/sinat_36521655/article/details/120051358)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值