问题标签 [elastic-cache]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
18 浏览

redis - AWS Elasticache Redis 6 是否使用多线程?

我发现这个博客 AWS Elasticache 现在支持 Redis 6

并且 Redis 6 具有多线程(根据this

但是这个比较仍然没有显示 Redis 的多线程

所以不清楚 AWS Redis 弹性缓存是否支持多线程

0 投票
0 回答
132 浏览

amazon-web-services - lettuce redis 6.0.0.RELEASE 未连接到启用传输功能的 AWS Elastic Cache Redis 集群和具有密码的新默认用户

我创建了 rediscluster 并分配了具有新默认用户和密码的用户管理组,我可以使用此命令连接到 redis 集群 redis-cli -u "redis://username:password@hostname:6379" --tls此命令使用用户名和密码以及 tls 选项。另一方面,当我尝试在下面的 Java 代码片段中使用生菜客户端 6.0.0.RELEASE 做完全相同的事情时,我得到了连接超时异常。

我收到以下错误

0 投票
0 回答
37 浏览

python - 在集群垂直扩展时将数据写入 AWS 弹性缓存时出现 ReadOnly 错误

我有一个 python 应用程序,它定期将一些数据写入 AWS 弹性缓存集群。

这是一个模拟我的应用程序功能的示例脚本。它还复制了我一直面临的错误。

这是我的应用程序的环境详细信息

  • Python(v 3.7.0)
  • Redis-py(v 3.5.3)
  • AWS 弹性缓存(禁用集群模式,1 个主节点,1 个只读副本)

当我垂直扩展我的 AWS 弹性缓存集群并且上面的脚本正在运行时,我在集群扩展过程中收到以下错误几秒钟,然后它就消失了。

AWS 文档还指出,在垂直扩展过程中,由于数据同步可能会出现一些不一致(https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/redis-cluster-vertical-scaling.html

有没有人遇到过类似的问题,或者可以解释为什么在放大过程中会出现这个错误?如何修复?

编辑:我用 golang 脚本尝试了同样的事情,它工作得很好。

0 投票
0 回答
59 浏览

node.js - ElasticCache redis实例抛出大量ECONNRESET和ETIMEDOUT erroes

我在 ElasticCache 上使用ioredis作为适配器我有 2 个节点,一个主节点和一个副本,

有了这个配置

  • 数据分层:禁用
  • 引擎版本兼容性:5.0.6
  • 多可用区:启用
  • 自动故障转移:启用

在此处输入图像描述

在上个月,我们开始遇到很多 ECONNRESET 和 ETIMEDOUT 错误,通常是随着新实例的扩展而出现的,其中一些连接了这些错误,而另一些则因这些错误而下降

这是我们的包装代码

  1. 有人遇到过这个问题吗?
  2. 错误处理的最佳实践是什么,在这种情况下,我应该在 [ECONNRESET,ETIMEDOUT] 错误状态代码返回时调用断开连接吗?
0 投票
0 回答
32 浏览

amazon-web-services - 是否可以在 elasticache (redis) 中捕获事件,例如删除寄存器?

我想知道是否有办法捕获从 AWS Elasticache 上的 redis 中删除寄存器的时间。我搜索了当删除redis集群时有一种发送通知的方法,但我不想要。有人知道吗?

https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/ElastiCacheSNS.html

0 投票
1 回答
71 浏览

amazon-web-services - AWS::ElastiCache::GlobalReplicationGroup 的 Cloud Formation 模板

想要使用 CF 创建 Redis 全局数据存储,遵循指南https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-globalreplicationgroup.html

但没有运气,我可以创建 Redis 集群,但不能创建全局数据存储:我的代码:

如果有人可以提供帮助,我会收到此错误:

资源全局复制的属性验证失败,消息为:#/Members/0/Role:#: 2 个子模式中只有 1 个匹配 #/Members/0/Role:关键字 [enum] 的验证约束失败

0 投票
1 回答
26 浏览

angular - 如何在 Angular 应用程序中实现 AWS Redis 会话

我想在 Angular 应用程序中实现 AWS redis 会话,以将登录令牌存储在可以跨 pod 使用的会话密钥中,我目前正在使用 sessionStorage 但需要使用 AWS redis 会话 谁能建议如何做到这一点?

0 投票
0 回答
13 浏览

django - Cache.get() 不返回任何内容

我的缓存设置,

}

当我在视图函数中执行以下操作时,

当我在 shell 中查询相同的内容时,它没有返回任何内容,

0 投票
0 回答
9 浏览

laravel - 在 Laravel 应用程序中,如何记录从缓存中查询的总时间?

我尝试memcached在我的 Laravel 应用程序中使用缓存驱动程序,但应用程序的响应时间突然从大约 300 毫秒减少到大约 4 秒。如何调试 Laravel 中每个缓存查询的缓存查询数量和响应时间?

0 投票
1 回答
26 浏览

amazon-web-services - 在 AWS 中存储自动递增索引值列表的最便宜方法是什么?

我有一个基于 DynamoDB 的 Web 应用程序,它使用 DynamoDB 存储我的大型 JSON 对象并通过 Web API 对它们执行简单的 CRUD 操作。我想添加一个新表,其作用类似于这些值的分类。用户应该能够从选择框中选择对象所属的类别。如果不存在所需的类别,用户应该能够创建一个新的类别,指定一个名称,该名称将来可用于其他对象。

对应用程序来说至关重要的是,这些类别中的每一个都被赋予一个从第一个从 1 开始递增的整数 ID。这些自动生成的数字将变成可重现的序列号,用于后端报告,不会使用用户可见的文本姓名。

所以我想有一个简单的 API 可以从网络前端获得,它允许我:

A) GET /category : 生成映射到 ID 的所有类别的 { int : string, ... }

B) PUSH /category :接受字符串并将字符串存储到下一个整数

以下是有关如何处理此类项目的一些想法。

  1. 使用整数索引将其存储在 DynamoDB 中。这种叶子有一些好处,但它还有很多不足之处。首先,DynamoDB 中没有自动递增的 ID,但我绝对可以获取表的状态,创建一个新的 ID,并存储结果。这可能在一致性和竞争条件方面存在问题,但可能有一种方法可以安全地实现这一点。但是,以这种方式使用 DynamoDB 可能是一个很大的反模式。

  2. 将其作为一个对象存储在具有一些随机索引的表中。只需将映射存储为 JSON 对象。这真的忘记了 DynamoDB 中表的概念,并将其用作简单文件。它也可能会遇到一些竞争条件问题。

  3. 使用 AWS ElasticCache 拥有 Redis 键值存储。这可能是“正确”的决定,但缺点是 ElasticCache 是始终在线的数据库产品,您按小时付费。对于像我这样的低流量网站,我认为我会支付最低 12 美元/月的费用,而且由于数量少,我真的希望每次访问/更新都需要付费。我不确定 Redis 是否有按照我需要的方式构建的自动增量功能。但是创建一个获取表格长度、添加一个并存储一个新值的事务是非常简单的。使用此解决方案可以轻松避免竞争条件。

  4. 使用 AWS Aurora 或 MYSQL 等 SQL 数据库。好吧,这与 Redis 具有相同的优势,但它也比 Redis 更加矫枉过正,而且它的成本也更高,而且它仍然一直在运行。

  5. 在内存 Web 服务或 MongoDB 等中运行我自己的……你仍然需要为持续运行的容器付费。编写自己的东西显然很愚蠢,但我确信有一些服务可以完美地解决这个问题,但它们都需要一个恒定的容器才能运行。

有没有一种食物方式来存储一个简单的列表,或者像这样的整数映射,而不需要花费固定的每月成本?有没有更好的方法来使用 DynamoDB 做到这一点?