spring cloud eureka之服务端

一、依赖

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
            <version>2.0.0.RC1</version>
        </dependency>

二、启动类增加注解

@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/ 可以访问到该服务的情况,图下:

通过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表示是否从注册中心拉取服务列表;

原文地址:http://blog.51cto.com/881206524/2118250

时间: 2024-07-28 16:57:34

spring cloud eureka之服务端的相关文章

Spring Cloud Eureka 实现服务注册与发现

Spring Cloud 是基于 Spring Boot 提供 了一套微服务解决方案,包括服务注册与 发现,配置中心,全链路监控,服务网关, 负载均衡,熔断器等组件.

Spring Cloud微服务实战-服务治理(Spring Cloud Eureka)

1. Spring Cloud Eureka简介 Spring Cloud Eureka主要用来完成微服务中的服务治理.是基于Netflix Eureka做的二次封装,Spring Cloud通过为Eureka增加了Spring Boot风格的自动化配置,我们只需要通过引入依赖和注解配置就能让Spring Boot构建的微服务应用轻松地与Eureka服务治理体系进行整合. 2. 服务治理背景 在微服务开发工程中,整个系统微服务应用非常多,并且随着业务的发展,微服务的数量在不断增加.而微服务之间的

Spring Cloud构建微服务架构(四)分布式配置中心

Spring Cloud Config为服务端和客户端提供了分布式系统的外部化配置支持.配置服务器为各应用的所有环境提供了一个中心化的外部配置.它实现了对服务端和客户端对Spring Environment和PropertySource抽象的映射,所以它除了适用于Spring构建的应用程序,也可以在任何其他语言运行的应用程序中使用.作为一个应用可以通过部署管道来进行测试或者投入生产,我们可以分别为这些环境创建配置,并且在需要迁移环境的时候获取对应环境的配置来运行. 配置服务器默认采用git来存储

关于Spring Cloud Eureka

首先,我们来尝试使用Spring Cloud Eureka来实现服务治理. Spring Cloud Eureka是Spring Cloud Netflix项目下的服务治理模块.而Spring Cloud Netflix项目是Spring Cloud的子项目之一,主要内容是对Netflix公司一系列开源产品的包装,它为Spring Boot应用提供了自配置的Netflix OSS整合.通过一些简单的注解,开发者就可以快速的在应用中配置一下常用模块并构建庞大的分布式系统.它主要提供的模块包括:服务

Spring Cloud构建微服务架构分布式配置中心

Spring Cloud Config是Spring Cloud团队创建的一个全新项目,用来为分布式系统中的基础设施和微服务应用提供集中化的外部配置支持,它分为服务端与客户端两个部分.其中服务端也称为分布式配置中心,它是一个独立的微服务应用,用来连接配置仓库并为客户端提供获取配置信息.加密/解密信息等访问接口:而客户端则是微服务架构中的各个微服务应用或基础设施,它们通过指定的配置中心来管理应用资源与业务相关的配置内容,并在启动的时候从配置中心获取和加载配置信息.Spring Cloud Conf

基于Spring Cloud的微服务构建学习-3 服务治理-Spring Cloud Eureka之高可用注册中心

什么叫高可用 高可用一般指服务的冗余,一个服务挂了,可以自动切换到另一个服务上,不会影响到客户体验. 高可用注册中心 在微服务架构这样的分布式环境中,我们需要充分考虑发生故障的情况,所以在生产环境中必须对各个组件进行高可用部署,对于微服务如此,对于服务中心也一样. Eureka Server的设计一开始就考虑了高可用问题,在Eureka的服务治理设计中,所有节点既是服务提供方,也是服务消费方,服务注册中心也不例外.在前一篇随笔中用到过这样的配置: eureka.client.register-w

1 Spring Cloud Eureka服务治理

注:此随笔为读书笔记.<Spring Cloud微服务实战> 什么是微服务? 微服务是将一个原本独立的系统拆分成若干个小型服务(一般按照功能模块拆分),这些小型服务都在各自独立的进程中运行,服务之间通过基于HTTP的RESTful API进行通信协作.每个微服务维护自身的数据存储.业务开发.自动化测试案例以及独立部署机制.维护自身的数据存储称为数据管理的去中心化.由于数据管理的去中心化,各个微服务的数据一致性成为一个难题,因此,需要强调的是各个服务之间进行无"事务"的调用.

基于Spring Cloud的微服务构建学习-3 服务治理:Spring Cloud Eureka

基于Spring Cloud的微服务构建学习-3 服务治理:Spring Cloud Eureka 什么是服务治理 服务治理可以说是微服务架构中最为核心和基础的模块,它主要用来实现各个微服务实例的自动化注册与发现. 为什么需要服务治理模块 在最初构建微服务系统的时候可能服务并不多,我们可以通过做一些静态配置来完成服务调用 此时看着一切都还正常. 随着项目逐渐接近尾声,维护人员需要维护的服务越来越多,越来越复杂,最终形成大量的配置文件,维护将会变得越来越困难.此时,微服务应用实例自动化管理框架变得

第三章 服务治理:Spring Cloud Eureka

Spring Cloud Eureka是Spring Cloud Netflix 微服务套件中的一部分,它基于Netflix Eureka做了二次封装,主要负责完成微服务架构中的服务治理功能.Spring Cloud 通过为Eureka增加了Spring Boot风格的自动化配置,我们只需通过引入依赖和注解配置就能让Spring Boot构建的微服务应用轻松的与Eureka服务治理体系进行整合. 服务治理: 服务治理可以说是微服务架构中最为核心和基础的模块,主要用来实现各个微服务实例的自动化注册