Vertx集群配置

vertx集群配置

1. pom文件中引入vertx-hazelcast jar


    io.vertx
    vertx-hazelcast
    ${vertx-version}

目前是3.3.3版本

2. resources内加入hazelcast的配置文件cluster.xml

默认vertx会去找vertx-hazelcast.jar内的default-cluster.xml

Vertx集群配置_第1张图片

如果需要自定义配置文件,需要将其放在classpath下,并且命名为cluster.xml,即打成fat包后在主目录下面。

Vertx集群配置_第2张图片

eclipse的java项目只需将default-cluster.xml文件copy一份到resources目录内,并修改名字为cluster.xml,打包的时候就会打到classpath的主目录下。

Vertx集群配置_第3张图片

3. cluster.xml配置

hazelcast的集群有3种方式

1. 广播multicast模式


  224.2.2.3
  54327

如果为true,同一个网段内的vertx实例会自动发现,并集群

2. ip地址tcp-ip模式


  192.168.1.28
  192.168.1.27
  192.168.1.26

需要把要集群的ip地址列在这里

3. aws亚马逊云集群模式


  my-access-key
  my-secret-key
  
  us-west-1
  
  ec2.amazonaws.com
  
  hazelcast-sg
  type
  hz-nodes

一般采用第二种ip地址tcp-ip模式,将其它模式置为false。整体的cluster.xml文件:



  
    false
    false
    false
    0
  

  
    dev
    dev-pass
  
  http://localhost:8080/mancenter
  
    5701
    
      
      0
    
    
      
        224.2.2.3
        54327
      
      
        192.168.1.28
        192.168.1.27
        192.168.1.26
      
      
        my-access-key
        my-secret-key
        
        us-west-1
        
        ec2.amazonaws.com
        
        hazelcast-sg
        type
        hz-nodes
      
    
    
      10.10.1.*
    
    
    
    
      
      PBEWithMD5AndDES
      
      thesalt
      
      thepass
      
      19
    
  
  
  
    16
    
    0
  

  

    
    1
  

  

    
    1
    
    0
    
    0
    
    NONE
    
    0
    
    25
    
    com.hazelcast.map.merge.LatestUpdateMapMergePolicy

  

  
  
    1
  


4. 集群方式运行fat.jar包

java -jar F:\work\i5xwxpro\target\i5xwxpro.jar -cluster

分别在对应的服务器上执行命令即可。

-cluster即是代表集群方式启动

5. nginx负载均衡

    upstream web{
        server 192.168.1.28:8080;
        server 192.168.1.27:8080;
        server 192.168.1.26:8080;
    }

nginx将请求负载到不同的vertx服务器即可

你可能感兴趣的:(vertx)