我正在摆弄我的两个顶点,我想在集群模式下启动它们。
下面是我的两个verticle的start-Methods:
第一个垂直:
public static void main(String[] args) {
VertxOptions options = new VertxOptions();
options.setClustered(true);
options.setClusterManager(new HazelcastClusterManager());
Vertx.clusteredVertx(options, res -> {
Vertx vertx = res.result();
vertx.deployVerticle(new WalzenSchnittBlMock());
});
}第二个竖线:
public void start() {
VertxOptions options = new VertxOptions();
Vertx.clusteredVertx(options, res -> {
vertx = res.result();
vertx.deployVerticle(serviceVerticle, this::completeRegister);
});
}这两个problem..have驻留在不同的机器上,但它们不会“看到”对方,尽管在集群mode....is中有我错过了什么吗?
发布于 2016-08-25 15:55:58
我找到了解决方案:
我有两台机器,每台都有四块网卡--而vertx似乎选错了一块。所以我不得不设置vertx应该使用的Ip地址。结果类似于其中Ipadress是jar-file的一个参数:
VertxOptions options = new VertxOptions();
Config config = new Config();
NetworkConfig networkConfig = config.getNetworkConfig();
networkConfig.getInterfaces().setEnabled(true).addInterface(args[0]);
options.setClusterManager(new HazelcastClusterManager(config));
options.setClustered(true);
options.setClusterHost(args[0]);
Vertx.clusteredVertx(options, res -> {
Vertx vertx = res.result();
vertx.deployVerticle(new Receiver());
});https://stackoverflow.com/questions/39105247
复制相似问题