成都网站建设设计

将想法与焦点和您一起共享

springcloudeureka之服务端-创新互联

一、依赖

成都创新互联公司一直通过网站建设和网站营销帮助企业获得更多客户资源。 以"深度挖掘,量身打造,注重实效"的一站式服务,以成都网站建设、成都网站制作、移动互联产品、成都营销网站建设服务为核心业务。10余年网站制作的经验,使用新网站建设技术,全新开发出的标准网站,不但价格便宜而且实用、灵活,特别适合中小公司网站制作。网站管理系统简单易用,维护方便,您可以完全操作网站资料,是中小公司快速网站建设的选择。

            org.springframework.cloud
            spring-cloud-starter-netflix-eureka-server
            2.0.0.RC1
        

二、启动类增加注解

@SpringBootApplication
@EnableEurekaServer
public class ServiceRegisterCenterDemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(ServiceRegisterCenterDemoApplication.class, args);
    }
}

三、单机注册中心配置

spring.application.name=service-register-center-demo
server.port=19001

eureka.instance.hostname=localhost
eureka.instance.app-group-name=test_group
eureka.instance.appname=register_center
eureka.instance.health-check-url-path=/health
eureka.instance.status-page-url-path=/status

eureka.client.enabled=true
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.client.serviceUrl.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka/

通过http://localhost:19001/ 可以访问到该服务的情况,图下:
spring cloud eureka之服务端

通过http://localhost:19001/actuator 查看健康检查情况。

注意:

  • eureka.instance.appname对应的是网页面板中,instaces下的application name;
  • eureka.client.register-with-eureka=false表示不将本instance注册到服务中心。反之,则会注册。可以通过面板中的instances列表查看;
  • eureka.client.fetch-registry=false表示是否从注册中心拉取服务列表;
  • 对于单机的注册中心,是否没有备份(复制)节点。在面板中,General Info下的registered-replicas、unavailable-replicas、available-replicas三项中都是空的。
  • 从中可以看出,注册服务中心也可以是client,同样可以将自身实例注册到服务中心。

四、多个对等注册中心配置
instance 1

spring.application.name=service-register-center-demo
server.port=19001

eureka.instance.hostname=peer1
eureka.instance.app-group-name=test_group
eureka.instance.appname=register_center1
eureka.instance.health-check-url-path=/health
eureka.instance.status-page-url-path=/status

#eureka.client.enabled=true
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.client.serviceUrl.defaultZone=http://peer2:19001/eureka/

instance 2

spring.application.name=service-register-center-1-demo
server.port=19002

eureka.instance.hostname=peer2
eureka.instance.app-group-name=test_group
eureka.instance.appname=register_center2
eureka.instance.health-check-url-path=/health
eureka.instance.status-page-url-path=/status

#eureka.client.enabled=true
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.client.serviceUrl.defaultZone=http://peer1:19002/eureka/

注意:

  • 对于单机配置多peer node,需要修改hosts文件;
  • 与单机配置不同的是,eureka.client.serviceUrl.defaultZone需要相互配置,并可以配置多个(逗号隔开)

五、配置参数说明

  • eureka.instance.hostname可以不设置。默认会是serviceUrl中的主机名,如:localhost
  • eureka.client.serviceUrl.defaultZone可以使用eureka.instance.hostname,也可以直接设置IP;
  • eureka.instance.appname表示instance名称。同样也可以不设置,则采用spring.application.name的值;
  • eureka.client.register-with-eureka=false表示不将本instance注册到服务中心。反之,则会注册。可以通过面板中的instances列表查看;
  • eureka.client.fetch-registry=false表示是否从注册中心拉取服务列表;

文章名称:springcloudeureka之服务端-创新互联
文章分享:http://chengdu.cdxwcx.cn/article/gcsgs.html