草庐IT

memory_cache

全部标签

caching - ElastiCache 维护时段可用性

我们计划使用ElastiCache(Redis)而不是我们自己的redis集群。但是,“维护窗口”设置会产生一些问题,如果我使用multi-az复制集群,elasticache是否会在维护窗口期间故障转移到可用副本,或者整个集群是否会在维护期间停机?一般需要多长时间?我们也可以使用MemCached代替Redis,它在维护窗口期间是否有更好的可用性情况?其他人如何处理ElastiCache维护窗口?停机时间值得吗?谢谢! 最佳答案 AWS通常进行2次维护。持续的托管维护更新。服务更新创建集群时,您需要指定60分钟的维护时段。通常所有

caching - ElastiCache 维护时段可用性

我们计划使用ElastiCache(Redis)而不是我们自己的redis集群。但是,“维护窗口”设置会产生一些问题,如果我使用multi-az复制集群,elasticache是否会在维护窗口期间故障转移到可用副本,或者整个集群是否会在维护期间停机?一般需要多长时间?我们也可以使用MemCached代替Redis,它在维护窗口期间是否有更好的可用性情况?其他人如何处理ElastiCache维护窗口?停机时间值得吗?谢谢! 最佳答案 AWS通常进行2次维护。持续的托管维护更新。服务更新创建集群时,您需要指定60分钟的维护时段。通常所有

caching - Redis 在填满和逐出键时有多慢? (LRU算法)

我在Java应用程序中使用Redis,我正在读取日志文件,在Redis中为每个日志存储/检索一些信息。key是我的日志文件中的IP地址,这意味着它们始终是即将到来的新闻key,即使它们经常出现也是如此。在某个时候,Redis达到了它的最大内存大小(在我的例子中是3gb),并开始驱逐一些键。我使用“allkeys-lru”设置,因为我想保留最年轻的key。然后整个应用程序变慢了很多,花费的时间是开始时的5倍。所以我有三个问题:出现如此剧烈的减速(长5倍)是否正常?有人经历过这种放缓吗?如果不是,我的代码中可能有另一个问题(不太可能,因为减速恰好在Redis达到其极限时出现)我可以改进我的

caching - Redis 在填满和逐出键时有多慢? (LRU算法)

我在Java应用程序中使用Redis,我正在读取日志文件,在Redis中为每个日志存储/检索一些信息。key是我的日志文件中的IP地址,这意味着它们始终是即将到来的新闻key,即使它们经常出现也是如此。在某个时候,Redis达到了它的最大内存大小(在我的例子中是3gb),并开始驱逐一些键。我使用“allkeys-lru”设置,因为我想保留最年轻的key。然后整个应用程序变慢了很多,花费的时间是开始时的5倍。所以我有三个问题:出现如此剧烈的减速(长5倍)是否正常?有人经历过这种放缓吗?如果不是,我的代码中可能有另一个问题(不太可能,因为减速恰好在Redis达到其极限时出现)我可以改进我的

python - Redis 队列 + python-rq : Right pattern to prevent high memory usage?

我们目前正在将Redis与我们的Heroku托管的Python应用程序一起使用。我们将Redis与python-rq纯粹用作任务队列,以提供延迟执行一些时间密集型任务。一项任务是从PostgreSQL数据库中检索一些数据并将结果写回它-因此Redis实例中根本没有保存任何有值(value)的数据。我们注意到,根据执行的作业量,Redis正在消耗越来越多的内存(增长速度约为10MB/小时)。CLI上的FLUSHDB命令修复了这个问题(将其减少到~700kB使用的RAM)直到RAM再次满。根据我们(未更改的标准)设置,作业结果保留500秒。随着时间的推移,一些作业当然会失败,它们会被移到失

python - Redis 队列 + python-rq : Right pattern to prevent high memory usage?

我们目前正在将Redis与我们的Heroku托管的Python应用程序一起使用。我们将Redis与python-rq纯粹用作任务队列,以提供延迟执行一些时间密集型任务。一项任务是从PostgreSQL数据库中检索一些数据并将结果写回它-因此Redis实例中根本没有保存任何有值(value)的数据。我们注意到,根据执行的作业量,Redis正在消耗越来越多的内存(增长速度约为10MB/小时)。CLI上的FLUSHDB命令修复了这个问题(将其减少到~700kB使用的RAM)直到RAM再次满。根据我们(未更改的标准)设置,作业结果保留500秒。随着时间的推移,一些作业当然会失败,它们会被移到失

caching - 使用 nginx 直接从 redis 缓存中提供内容

我正在使用nginx将请求传递给Node应用程序。该应用程序基本上充当html的远程缓存(检查用户请求的内容是否在redis数据库中,如果它只是显示,如果不捕获它并将其存储在redis缓存中并提供它。)我很好奇是否有办法通过让nginx直接从redis提供内容来绕过Node应用程序?我一直在玩http_redis模块,但我无法真正让它工作。一个简单的例子是:http://mywebsite.com/a如果该键不存在,nginx将在“a”键中提供内容或将其传递给节点应用程序。这可能吗? 最佳答案 可能比Webdis更难设置,但您可以直

caching - 使用 nginx 直接从 redis 缓存中提供内容

我正在使用nginx将请求传递给Node应用程序。该应用程序基本上充当html的远程缓存(检查用户请求的内容是否在redis数据库中,如果它只是显示,如果不捕获它并将其存储在redis缓存中并提供它。)我很好奇是否有办法通过让nginx直接从redis提供内容来绕过Node应用程序?我一直在玩http_redis模块,但我无法真正让它工作。一个简单的例子是:http://mywebsite.com/a如果该键不存在,nginx将在“a”键中提供内容或将其传递给节点应用程序。这可能吗? 最佳答案 可能比Webdis更难设置,但您可以直

FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory

原因JavaScript内存不足,指的就是Node,Node基于V8引擎,Node中通过script使用的内存只是很小的一部分(64位系统下约为1.4GB,32位系统下约为0.7GB),当我们的开发中包比较大时,就容易形成内存不足。解决方法(设置增加内存)方法一"serve":"node--max_old_space_size=4096node_modules/@vue/cli-service/bin/vue-cli-service.jsserve"或者"serve":"npx--max_old_space_size=4096node_modules/@vue/cli-service/bin/

caching - 当 RAM 开始填满时,Redis 如何工作?

我可能完全不理解,但我对缓存存储在开始添加持久性功能之前的工作方式的理解是,项目会根据其TTL过期。.如果商店开始填满可用的RAM,他们每个人都会有自己的算法来过期商店中最不“重要”的键。现在我读到Redis有persistence特征。但您可以将它们关闭。假设您关闭持久性,当RAM填满时会发生什么?Redis如何决定什么要过期?我希望有大量没有TTL的数据,并希望确保让Redis确定哪些内容会过期是安全的。 最佳答案 我不认为这个问题与虚拟内存管理有关,而是与Redis中项目的过期有关,这是一个完全不同的话题。与memcached