SpringCloud 向Consul注冊

2023-12-04 15:54 更新

當(dāng)客戶端向Consul注冊時(shí),它將提供有關(guān)其自身的元數(shù)據(jù),例如主機(jī)和端口,id,名稱和標(biāo)簽。默認(rèn)情況下,會創(chuàng)建一個(gè)HTTP 檢查,檢查每10秒Consul命中/health端點(diǎn)。如果運(yùn)行狀況檢查失敗,則將該服務(wù)實(shí)例標(biāo)記為關(guān)鍵。

示例Consul客戶:

@SpringBootApplication
@RestController
public class Application {

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

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

}

(即完全正常的Spring Boot應(yīng)用)。如果Consul客戶端位于localhost:8500之外的其他位置,則需要進(jìn)行配置才能找到該客戶端。例:

application.yml。 

spring:
  cloud:
    consul:
      host: localhost
      port: 8500

 如果使用Spring Cloud Consul Config,則需要將以上值放置在bootstrap.yml中,而不是application.yml中。

來自Environment的默認(rèn)服務(wù)名稱,實(shí)例ID和端口分別為${spring.application.name},Spring上下文ID和${server.port}。

要禁用Consul發(fā)現(xiàn)客戶端,可以將spring.cloud.consul.discovery.enabled設(shè)置為false。當(dāng)spring.cloud.discovery.enabled設(shè)置為false時(shí),Consul Discovery Client也將被禁用。

要禁用服務(wù)注冊,可以將spring.cloud.consul.discovery.register設(shè)置為false

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號