我正在尝试将RedisIdempotentRepository用作Idempotent Consumer用于骆驼路线。我尝试使用本地Redis docker容器,并使用以下代码按预期工作。
IdempotentRepository redisIdempotentRepository = new RedisIdempotentRepository("redis");
from(source)
.idempotentConsumer(simple("${in.header.CamelFileName}"), redisIdempotentRepository)
.log("Uploading file ${file:name} started...")
.to(destination)
.log("Uploading file ${file:name} completed...");
在未提供任何详细信息的情况下,它正在连接到localhost:6379
。如何提供ElastiCache
详细信息以进行连接?
答案 0 :(得分:0)
现在正在工作。我在redis节点关联安全组的入站规则中添加了6379
端口。
JedisConnectionFactory jedisConnectionFactory = new JedisConnectionFactory();
jedisConnectionFactory.setHostName("<cluster-name>.mdbnso.0001.use1.cache.amazonaws.com");
jedisConnectionFactory.setPort(6379);
jedisConnectionFactory.afterPropertiesSet();
RedisTemplate redisTemplate = new RedisTemplate();
redisTemplate.setConnectionFactory(jedisConnectionFactory);
redisTemplate.afterPropertiesSet();
IdempotentRepository redisIdempotentRepository = new RedisIdempotentRepository(redisTemplate, "redis");
from(source)
.idempotentConsumer(simple("${in.header.CamelFileName}"), redisIdempotentRepository)
.log("Uploading file ${file:name} started...")
.to(destination)
.log("Uploading file ${file:name} completed...");