当前位置: 首页 > 后端技术 > Node.js

NPM酷库:基于lru-cache内存的缓存管理

时间:2023-04-03 16:00:02 Node.js

NPM酷库,每天两分钟了解一个流行的NPM库。为了优化程序的性能,我们经常需要缓存奖励数据。根据实际情况,我们可以将数据存储到磁盘、数据库、redis等。但是有时候要缓存的数据量很小,或者项目规模很小,可能是工具脚本,使用redis等外部数据库,需要依赖部署。将数据直接保存在程序变量中是最经济快速的。但是这样会带来一些其他的问题,比如缓存更新,缓存过期等等。lru-cachelru-cache用于管理内存中的缓存数据,支持LRU算法。允许程序在不依赖任何外部数据库的情况下实现缓存管理。LRU算法:尽量保留最近使用的项目。您可以指定缓存大小。您可以指定缓存项的过期时间。constLRU=require('lru-cache');constcache=LRU({max:500,maxAge:1000*60*60});cache.set('key','value');cache.get('key');//“值”cache.reset();//Empty虽然,lru-cache使用起来很方便,但是lru-cache的缓存数据是存放在当前进程内存中的,这就决定了依赖lru-cache的项目是一个有状态的程序,这样分布式部署多实例负载均衡是不可能的,所以如果系统设计需要多实例运行,那么还是需要Redis。参考https://github.com/isaacs/nod...欢迎关注公众号:梁星辰每天学一个NPM库,一年后成为Node.js高手