修改 src/main/java/io/vertx/book/message/HelloMicroservice.java文件,并更新start方法

import io.vertx.core.AbstractVerticle;
import io.vertx.core.json.JsonObject;

public class HelloMicroservice extends AbstractVerticle {

    @Override
    public void start() {
        // Receive message from the address 'hello'
        vertx.eventBus().<String>consumer("hello", message -> {
            JsonObject json = new JsonObject()
                    .put("served-by", this.toString());
            // Check whether we have received a payload in the
            // incoming message
            if (message.body().isEmpty()) {
                message.reply(json.put("message", "hello"));
            } else {
                message.reply(json.put("message", "hello " + message.body()));
            }
        });
    }

}

该代码从vertx对象中检索eventBus,并在"hello"地址中注册一个消费者。当收到一条消息时,它会回复它。根据传入的消息是否有body,我们有两种不同的响应策略。如前一章中的示例所示,我们返回一个JSON对象。您可能想知道为什么我们在JSON中添加了 served-by条目。你很快就会明白的。现在,verticle已经写好了,是时候发布它了:

mvn compile vertx:run \
    -Dvertx.runArgs="-cluster -Djava.net.preferIPv4Stack=true"

-cluster告诉Vert.x 以cluster模式启动。

现在让我们编写一个使用此服务的微服务

results matching ""

    No results matching ""