我尝试做一个简单的测试,我从redis读取值并将它们打印到控制台。但是,虽然程序编译并运行,但它不会向控制台打印任何内容(是的,RedK中存在testKEY)。为什么会这样?
private static class MyRouteBuilder extends RouteBuilder {
@Override
public void configure() throws Exception {
from("spring-redis://localhost:6379?command=GET&serializer=#serializer")
.setHeader("CamelRedis.Key", constant("testKEY"))
.to("stream:out");
}
}
答案 0 :(得分:1)
Camel Redis消费者可以订阅PUB / SUB频道并接收通知。它无法执行get或其他操作。 如果要从redis读取/获取值,则必须使用生产者端点。
答案 1 :(得分:1)
您可以尝试以下方式:
from("timer:redisPoll?period=30000")
.setHeader("CamelRedis.Key", constant("testKEY"))
.to("spring-redis://localhost:6379?command=GET&serializer=#serializer")
.to("stream:out");
这应该每隔30秒在Redis上发出一个Get测试键并将结果打印到控制台。