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
相關文章
相關標籤/搜索