3.7.0之后与事件总线使用者一起使用PubSub vertx redis

时间:2019-10-22 16:10:59

标签: redis vert.x

我们正在将Vertx代码库从3.6.3迁移到3.8.1。

我不确定redis pub / sub和事件总线使用者是否仍可以一起工作。我也找不到新版本中的任何文档。

来自3.5.1 documentation:

vertx.eventBus().<JsonObject>consumer("io.vertx.redis.channel1", received -> {
  // do whatever you need to do with your message
  JsonObject value = received.body().getJsonObject("value");
  // the value is a JSON doc with the following properties
  // channel - The channel to which this message was sent
  // pattern - Pattern is present if you use psubscribe command and is the pattern that matched this message channel
  // message - The message payload
});

RedisClient redis = RedisClient.create(vertx, new RedisOptions());

redis.subscribe("channel1", res -> {
  if (res.succeeded()) {
    // so something...
  }
});

现在如何与新的Redis客户端/ RedisAPI一起使用?

The documentation的描述性不是很高。 (没有订阅命令。也没有 channel1 的痕迹)

1 个答案:

答案 0 :(得分:0)

您应该能够为io.vertx.redis.client.Redis#handler注册订阅处理程序。对于已发布的消息,将使用io.vertx.redis.client.Response参考(带有相应的信息)进行调用。