amazon-web-services - Redis集群在不同主机上有什么好处?

标签 amazon-web-services redis

假设我有 3 个 Web 应用程序实例 A 在负载均衡器后面运行(全部在不同的机器上)。

在多个实例上运行 Redis 有什么好处吗?如果是这样,您如何实现多个 Redis 实例之间的奇偶校验?

我想我很好奇这种设置的优缺点。

出现这个问题的全部原因是,如果您使用多个 Web 应用程序实例,那么一开始使用 Redis 的一些好处不会被抵消吗?在本地机器上与 Redis 交互似乎比从实例 A 的内存中提取数据然后通过网络将其移动到实例 B 快得多。

最佳答案

Is there a benefit of running Redis on more than one instance?

是的。至少有三个好处。

  1. Redis 是单线程的(实际上它有多个线程,但大部分工作都是在一个线程中完成的)。使用多个实例,您可以获得更好的性能。
  2. Redis将数据存储在内存中,存储量受限于单机内存的大小。为了存储更多的数据,您可以在不同的机器上部署多个Redis实例,每个实例存储整个数据的不同部分。
  3. 您可以在两台不同的机器上运行一个 Redis 主实例及其从实例。如果运行主实例的机器宕机,从实例仍然可以处理请求。

If so, how do you achieve parity between more than one Redis instance?

我不确定您所说的奇偶校验 是什么意思。你是说主仆关系? Redis 可以有一个 master 和几个 slave,每个 slave 甚至可以有自己的 slave(如果我没记错的话)。

wouldn't some of the benefits of using Redis in the first place be negated if you use more than one instance of a web app? Interacting with Redis on a local machine seems like it would be much faster than pulling the data from in memory on instance A and then moving it over the network to Instance B.

如果您在两台不同的机器上部署 Redis 实例和 Web 应用程序实例,您必须确保两台机器之间的网络具有低延迟

关于amazon-web-services - Redis集群在不同主机上有什么好处?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39521180/

相关文章:

amazon-web-services - 无法从Internet访问AWS EKS集群,DockerHub和Traefik

node.js - 将临时数据存储在 couchbase 或 redis 中

amazon-web-services - AWS CloudWatch : EndpointConnectionError: Could not connect to the endpoint URL

amazon-web-services - 如何创建代理以在AWS Glue的Spark UI上查看作业?

java - 在amazon sqs、alpine sqs spring boot中批量消费消息

database - 使用 Redis 存储和查询字段

redis - 具有自动增量键的 Spring Data + Redis

grails - 生产iOS推送通知在本地发送,但不是从AWS Elastic beantalk发送

redis - redis `expires` 输出中的 `info keyspace` 是什么意思?

laravel - 为什么我的 Laravel 队列命令在 Redis 队列驱动程序上随着时间的推移变慢?