Hazelcast Vert.x群集环境中不同端口上的多个垂直部署。问题
我在不同的端口上部署了其他垂直站点:Hazelcast Vert.x群集环境中不同端口上的多个垂直部署。问题,hazelcast,vert.x,sockjs,event-bus,Hazelcast,Vert.x,Sockjs,Event Bus,我在不同的端口上部署了其他垂直站点: public void start(未来开始未来)引发异常{ ... 最终部署选项frontOptions=新部署选项() .setInstances(配置.HZ\u NB\u实例\u通知); 最终部署选项backOptions=新部署选项() .setInstances(配置.HZ\u NB\u实例\u通知); ... ClusterManager mgr=新的HazelcastClusterManager(); VertxOptions options=
public void start(未来开始未来)引发异常{
...
最终部署选项frontOptions=新部署选项()
.setInstances(配置.HZ\u NB\u实例\u通知);
最终部署选项backOptions=新部署选项()
.setInstances(配置.HZ\u NB\u实例\u通知);
...
ClusterManager mgr=新的HazelcastClusterManager();
VertxOptions options=新的VertxOptions().setClusterManager(mgr);
Vertx.clusteredVertx(选项,分辨率->{
如果(res.successed()){
deployVerticle(WebVerticle.class.getName(),frontOptions,
部署结果->{
如果(deployResult.successed()){
deployVerticle(SockVerticle.class.getName(),
backOptions,deployResult1->{
...
}
}
}
}
如果WebVerticle用于创建Vert.xWeb服务器
,它将在8090(httpServer)上托管所有静态文件
SockVerticle用于在8091(httpServer)上使用SockJSHandler创建事件总线
有时,当我们加载应用程序时,它无法在eventbus上处理接收到的消息,所以我必须在chrome中进行硬刷新
我应该为httpServer(8090)上公开的web(静态页面)和httpServer(8091)上公开的eventbus(后端操作)创建两个不同的fat.jar吗?我必须更新集群的java参数: 运行com.xxx.MainVerticle--launcher class=io.vertx.core.launcher--conf=xxx.json-Dvertx.options.blockedThreadCheckInterval=200000000-Dfile.encoding=UTF-8-cp.-cluster
public void start(Future<Void> startFuture) throws Exception {
...
final DeploymentOptions frontOptions = new DeploymentOptions()
.setInstances(Configuration.HZ_NB_INSTANCES_NOTIFICATION);
final DeploymentOptions backOptions = new DeploymentOptions()
.setInstances(Configuration.HZ_NB_INSTANCES_NOTIFICATION);
...
ClusterManager mgr = new HazelcastClusterManager();
VertxOptions options = new VertxOptions().setClusterManager(mgr);
Vertx.clusteredVertx(options, res -> {
if (res.succeeded()) {
vertx.deployVerticle(WebVerticle.class.getName(), frontOptions,
deployResult -> {
if (deployResult.succeeded()) {
vertx.deployVerticle(SockVerticle.class.getName(),
backOptions , deployResult1 -> {
...
}
}
}
}