Spring Cloud Netflix—注册Eureka

当客户端注册Eureka时,它提供关于自身的元数据,例如主机和端口,健康指示符URL,主页等。Eureka从属于服务的每一个实例接收心跳消息。若是心跳失败超过可配置的时间表,则一般将该实例从注册表中删除。html

示例eureka客户端:web

@Configuration @ComponentScan @EnableAutoConfiguration @EnableEurekaClient @RestController public class Application {spring

@RequestMapping("/")
public String home() {
    return "Hello world";
}

public static void main(String[] args) {
    new SpringApplicationBuilder(Application.class).web(true).run(args);
}
复制代码

} (即彻底正常的Spring Boot应用程序)。在这个例子中,咱们明确地使用@EnableEurekaClient,但只有Eureka可用,你也能够使用@EnableDiscoveryClient。须要配置才能找到Eureka服务器。例:安全

application.yml eureka: client: serviceUrl: defaultZone: http://localhost:8761/eureka/ 其中“defaultZone”是一个魔术字符串后备值,为任何不表示首选项的客户端提供服务URL(即它是有用的默认值)。服务器

从Environment获取的默认应用程序名称(服务ID),虚拟主机和非安全端口分别为{spring.application.name},{spring.application.name}和${server.port}。app

@EnableEurekaClient将应用程序同时进入一个Eureka“实例”(即注册本身)和一个“客户端”(即它能够查询注册表以查找其余服务)。实例行为由eureka.instance.*配置键驱动,可是若是您确保您的应用程序具备spring.application.name(这是Eureka服务ID或VIP的默认值),那么默认值将是正常的。ui

有关可配置选项的更多详细信息,请参阅EurekaInstanceConfigBean和EurekaClientConfigBean。spa

使用Eureka服务器进行身份验证 若是其中一个eureka.client.serviceUrl.defaultZone网址中包含一个凭据(如http://user:password@localhost:8761/eureka)),HTTP基自己份验证将自动添加到您的eureka客户端。对于更复杂的需求,您能够建立DiscoveryClientOptionalArgs类型的@Bean,并将ClientFilter实例注入到其中,全部这些都将应用于从客户端到服务器的调用。code

注意 因为Eureka中的限制,不可能支持每一个服务器的基自己份验证凭据,因此只能使用第一个找到的cdn

源码来源:http://minglisoft.cn/honghu/technology.html
相关文章
相关标签/搜索