dropwizard 基于consul的服务注册和发现

dropwizard是一款轻量级微服务架构,不像spring集成了各种功能,dropwizard非常轻量,所以需要的功能大部分需要自己实现,有很强的自主性。

依赖


com.smoketurner.dropwizard 

consul-core 

1.3.4-1 

 com.smoketurner.dropwizard 

consul-ribbon 

1.3.4-1

dropwizard版本1.3.5,1.1.3版本存在依赖冲突。

io.dropwizard

dropwizard-core

1.3.5

1.绑定bundle

@Override

public void initialize(final Bootstrap bootstrap) {

    bootstrap.addBundle(new ConsulBundle(getName()) {

        @Override

        public ConsulFactory getConsulFactory(HelloConfiguration configuration) {

            return configuration.getConsul();

        }

    });

    super.initialize(bootstrap);

}

2.增加配置

consul:

  # Optional properties

  # endpoint for consul (defaults to localhost:8500)

  endpoint: localhost:8500

  # service port

  servicePort: 8080

  # check interval frequency

  checkInterval: 1 second

启动微服务即可

参考:https://github.com/smoketurner/dropwizard-consul

效果


consul可以保存key/value,在程序启动的时候替换配置,实现动态配置,不支持实时修改,只能在启动的时候加载配置。

consul 安装参考:

http://www.cnblogs.com/xishuai/p/macos-ubuntu-install-consul.html

你可能感兴趣的:(dropwizard 基于consul的服务注册和发现)