我想知道使用 ElastiCache/SimpleQueue 与分别在 DynamoDB 中使用“缓存”和“队列”表的理由。
似乎缓存/队列服务的网络延迟会胜过很多性能提升,并且让 EC2 将 Dynamo 视为缓存/队列服务将提供相同的延迟和吞吐量(因为 Dynamo 在任何情况下都允许固定的低延迟)加载)。
主要是关于发电机与其他负载服务的价格吗?
有没有人将 Dynamo 与 ElastiCache/SQS 进行比较时有任何粗略的延迟数字?
我是否遗漏了其他更重要的考虑因素来证明额外的复杂性?
谢谢。
我们的 ElastiCache Redis 实例交换一直存在问题。亚马逊似乎有一些粗略的内部监控,它会注意到交换使用高峰,并简单地重新启动 ElastiCache 实例(从而丢失我们所有的缓存项目)。这是过去 14 天我们 ElastiCache 实例上 BytesUsedForCache(蓝线)和 SwapUsage(橙线)的图表:

您可以看到不断增长的交换使用模式似乎触发了我们的 ElastiCache 实例的重启,其中我们丢失了所有缓存项目(BytesUsedForCache 降至 0)。
我们 ElastiCache 仪表板的“缓存事件”选项卡具有相应的条目:
来源 ID | 类型 | 日期 | 事件
缓存实例 ID | 缓存集群| 2015 年 9 月 22 日星期二 07:34:47 GMT-400 | 缓存节点 0001 重新启动
缓存实例 ID | 缓存集群| 2015 年 9 月 22 日星期二 07:34:42 GMT-400 | 在节点 0001 上重新启动缓存引擎时出错
缓存实例 ID | 缓存集群| 2015 年 9 月 20 日星期日 11:13:05 GMT-400 | 缓存节点 0001 重新启动
缓存实例 ID | 缓存集群| …
我正在尝试创建一个 Redis 节点,但在配置窗口中,我无法选择我创建的 VPC。我看到的只是默认的 VPC。因此,子网也只是属于默认 VPC 的子网。
我还需要做什么才能列出我的自定义 VPC,以便我可以将 ElastiCache 节点附加到它吗?
我们正在为我们的站点使用 ElastiCache - Redis,我们需要刷新 Redis 缓存,当我尝试从任何 PC 通过此命令远程连接到我的 ElastiCache - Redis 时
redis-cli -h example-redis-1.example.0001.euw1.cache.amazonaws.com -p 6379
Run Code Online (Sandbox Code Playgroud)
它总是说:
无法在 example-redis-1.example.0001.euw1.cache.amazonaws.com:6379 处连接到 Redis:连接被拒绝,未连接>
我已确保入站规则允许来自任何 IP 的 6379 并尝试编辑 /etc/redis.conf 以添加绑定 example-redis-1.example.0001.euw1.cache.amazonaws.com 但即使错误仍然存在相同的。
我正在使用 AWS Elastic Beanstalk,很容易从部署基于 Java 的 Web 应用程序开始,这很棒。
但是,我想在本地的每个实例上安装Memcached,以便它们可以用于缓存,但似乎它验证了Elastic Beanstalk的原理?
是否可以在本地自动部署 memcached,以及 Elastic Beanstalk 的自动缩放功能?
(我知道我可以使用 Elastic Cache 但想节省一些钱但仍然利用自动缩放的优势)
谢谢。
cloud-computing amazon-ec2 amazon-web-services amazon-beanstalk amazon-elasticache
我正在尝试编写一个 CloudFormation 模板,该模板将 Lambda 函数订阅到 CloudWatch Logs LogGroup。然后,此 Lambda 函数应解析日志并将它们放入 Amazon ES 集群。
订阅等都运行良好,但我无法理解的一点是如何将 Amazon ES 集群端点传递给 Lambda 函数。当您浏览控制台时,AWS 提供的模板包括一行:
var endpoint = 'my-aws-es-endpoint.amazonaws.com';
Run Code Online (Sandbox Code Playgroud)
每次运行 CloudFormation 模板时,我显然都需要更新它,因为每次我都会得到一个具有不同端点的不同集群。我不想手动更新它,但希望能够使用像“Fn::GetAtt”这样的 CloudFormation 函数来获取终点并将其传递给 Lambda。我就是不知道怎么做。
我一直在使用 AWS Elasticache 阅读有关 Redis 的内容,但对安全性有点困惑。到目前为止,似乎唯一的安全措施是创建一个仅允许来自特定安全组或 IP 地址的访问的 Redis 安全组。
我可以/应该添加任何额外的安全性吗?
有没有办法将 Redis 访问安全附加到 IAM 角色?
Network Bandwidth In Allowance Exceeded我们最近改用 Elasticache,我们在、 和 的图表上看到一些亮点Network Bandwidth Out Allowance Exceeded:
这很奇怪,因为我们没有使用太多带宽:
\n\n我们正在使用一个cache.t4g.small关闭集群模式的实例和一个副本。根据定价页面,我们应该获得“高达 5 Gigabit”的网络性能。上面的图表远非如此。
那么为什么我们的带宽会被超出呢?我是否需要忍气吞声并支付更大的实例费用?如果是这样,那将花费大约 4\xc3\x97 左右,因为下一个具有更多带宽的实例是cache.m6g.large. 好像有什么不对劲?或者也许我可以忽略这些图表?
我创建了一个 redis 集群并创建了一个名为 的新安全组cache-access。如果我通过 ssh 进入 ec2 服务器并尝试访问缓存节点,则如果满足两个条件,它就会起作用:
cache-access安全组cache-access安全组开放入站6379端口对我来说,通过安全组 ( ) 将 ec2 访问列入白名单是有意义的#1,考虑到一个组可能需要扩大或缩小规模,因此将 IP 地址列入白名单是行不通的。
为什么我需要打开端口(#2)是没有意义的。ec2 实例未运行redis-server。elasticache 服务器是监听 6379 的服务器。
为什么ec2安全组需要开放6379端口才能工作?
amazon-ec2 amazon-web-services amazon-elasticache amazon-vpc
有没有人提供托管在亚马逊 ec2 中的容错(复制)内存缓存解决方案,需要零维护并且只提供一个 IP?
我知道亚马逊提供 ElastiCache。但它仍然是相当低的水平并且有一些缺点:
我梦想有一个托管服务,它为我提供一个 IP 地址并且“始终有效”。
谢谢,马塞尔
我有一个想要管理的 AWS ElastiCache Redis 集群设置。由于 AWS 不允许您在 VPC 之外访问 ElastiCache,因此我设置了一个微型 EC2 实例,该实例带有指向该集群的 phpRedisAdmin 脚本的副本。但是 AWS 在 Redis 集群上禁用了“CONFIG”命令,因此 phpRedisAdmin 无法连接和管理 ElastiCache 集群。
我已经尝试了 redis-browser 节点包,但它在 0.0.0.0:4567 上运行,我需要在此实例上使用公共 IP 来管理 Redis 集群。
有什么建议吗?
我们在cache.t2.micro 实例上启动了一个AWS Elasticache实例。它将接受多少个连接?
redis ×4
amazon-ec2 ×3
amazon-vpc ×3
cloud ×1
hosting ×1
memcache ×1
memory-usage ×1
ssh ×1
swap ×1