消息是一个抽象出来的概念,其实就是一串数据的集合,专业术语就是结构化数据对象,Vert.x中消息有如下属性特征:
Vert.x 支持多种数据类型作为消息的 body,例如:
String, Number, Boolean。JSON 对象、JSON 数组。Buffer(字节流)。// 发送一个 JSON 消息
JsonObject messageBody = new JsonObject()
.put("userId", 123)
.put("action", "login");
eventBus.send("user.events", messageBody);
// 发送二进制数据
Buffer buffer = Buffer.buffer().appendString("Hello Vert.x");
eventBus.send("data.channel", buffer);
Vert.x 通过事件总线支持两种消息传递模式:
eventBus.send(address, body) 或 eventBus.publish(address, body)。address 将消息分发给已注册的消费者。