是否可以通过提供Node端点来连接到Redis Cache Cluster Node?我应该为此使用哪个库? 另外,我应该使用哪个API从缓存中存储和检索内容? 解决方案如下: 简而言之 这取决于。 说明 您可以连接到Redis Cluster节点,而无需将命令分派(dispatch)到其他节点。您只应确保访问由节点处理的密钥。如果要连接到从站,请确保您的连接处于READONLY模式,否则从站将以MOVED进行响应。 有很多基于Java的Redis客户端: 低级 Jedis-同步API Lettuce-异步和同步A…

2020年11月30日 0条评论 41点热度 阅读全文

我正在使用Jedis连接到AWS中的Redis实例/群集,但一直出现此错误,这是代码,我在SO上进行了广泛搜索,发现最接近的代码是:String hostname from properties file: Java 我尝试了两种方式,都没有为我工作。所以请帮忙。 这是我的Java代码: public static void main(String[] args) { AWSCredentials credentials = null; try { credentials = new ProfileCredenti…

2020年11月26日 0条评论 36点热度 阅读全文

我需要获取Amazon Elasticache中Redis集群的终端节点。以下代码适用于Memcached群集,但不适用于Redis: import com.amazonaws.auth.AWSCredentials; import com.amazonaws.auth.profile.ProfileCredentialsProvider; import com.amazonaws.regions.Regions; import com.amazonaws.services.elasticache.AmazonEl…

2020年11月21日 0条评论 45点热度 阅读全文

我的应用程序对Redis进行了很多调用,我不想每次都创建一个客户端。有没有一种方法可以创建连接池并在需要连接到Redis时使用池中的连接。请注意,redis在这里处于单服务器模式。 解决方案如下: 使用Redisson,您不需要创建连接池,因为Redisson已经为您维护了连接池。只需将Redisson实例创建为单例(完全线程安全)并使用它即可。

2020年10月27日 0条评论 47点热度 阅读全文

我正在将我当前的项目从Jedis移植到Lettuce。 是否可以将共享连接用于反应性API?只要我不调用BLPOP和MULTI / EXEC之类的阻塞和事务操作? 我应该使用池式连接通过反应式API进行交易吗? 是否可以通过反应式API来管道命令?我应该为此使用专用连接吗? 解决方案如下: 在多个线程之间共享一个连接是预期的用法。原因有很多: 连接是线程安全的。 Redis是单线程的。由于缺少Redis处理并行性,因此无法获得性能提升,因此使用多台连接到一台主机显然没有任何意义。 连接池将打开多个连接。尽管这对于事…

2020年9月26日 0条评论 45点热度 阅读全文

我一直在使用Lettuce作为Redis客户端与AWS Elasticache交流。我当前正在使用的特定配置是Static Master/Slave with predefined node addresses。最近,主节点启动了故障转移过程,并最终导致所有应用程序写请求失败,并出现以下错误: redis.RedisCommandExecutionException: READONLY You can't write against a read only slave. 从那时起,我一直在进行一些研究,并意识到 S…

2020年9月3日 0条评论 44点热度 阅读全文

我有一个Elasticache设置,其中有一个主机和两个从机。我仍然不确定如何传递主从RedisURI的列表来构造StatefulRedisMasterSlaveConnection的LettuceConnectionFactory。我只看到对具有单个主机和端口的standaloneConfiguration的支持。 LettuceClientConfiguration configuration = LettuceTestClientConfiguration.builder().readFrom(ReadFro…

2020年8月21日 0条评论 33点热度 阅读全文

我一直在使用Lettuce作为Redis客户端与AWS Elasticache交流。我当前正在使用的特定配置是Static Master/Slave with predefined node addresses。最近,主节点启动了故障转移过程,并最终导致所有应用程序写请求失败,并出现以下错误: redis.RedisCommandExecutionException: READONLY You can't write against a read only slave. 从那时起,我一直在进行一些研究,并意识到 S…

2020年7月18日 0条评论 30点热度 阅读全文

我将要开始一个项目,该项目的读写操作非常频繁且频繁。因此,环顾四周,我发现内存数据库正是为此目的而创建的。经过更多调查后,我进入了redis。 Redis看起来很酷(虽然刚开始阅读,但是对它的了解很多)。但是我主要只看过关系数据库,并以元组和关系的方式考虑数据(我认为我可以随着时间的流逝而学习)。 我现在有以下问题: 我可以仅使用Redis来存储数据吗? 我之所以要问的原因是,我看到的每篇文章都将Redis / memcached用作缓存的中间层。 我可以仅依靠redis持久保存数据吗? 在哪里托管/运行redis…

2020年6月6日 0条评论 37点热度 阅读全文

我们正在Elastic Beanstalk上运行一个servlet,并与ElastiCache进行连接,并且运行良好,但是现在在高峰时段我们获得了很高的CPU负载(50%),并正在寻求对其进行优化。 目前,我们使用Jedis是这样的: try (Jedis jedis = new Jedis(Global.CLUSTER_ENDPOINT, 6379, 10000);) { jedis.hset(f.dayOfFile, "content", f.xmlFile); } 我们遇到的一个问题是 Activity 连接…

2020年6月4日 0条评论 42点热度 阅读全文