SpringCloud 使Consul實(shí)例ID唯一

2023-12-04 15:59 更新

默認(rèn)情況下,consul實(shí)例注冊(cè)的ID與其Spring應(yīng)用程序上下文ID相同。默認(rèn)情況下,Spring應(yīng)用程序上下文ID為${spring.application.name}:comma,separated,profiles:${server.port}。在大多數(shù)情況下,這將允許一項(xiàng)服務(wù)的多個(gè)實(shí)例在一臺(tái)計(jì)算機(jī)上運(yùn)行。如果需要進(jìn)一步的唯一性,則可以使用Spring Cloud在spring.cloud.consul.discovery.instanceId中提供唯一的標(biāo)識(shí)符來覆蓋它。例如:

application.yml。 

spring:
  cloud:
    consul:
      discovery:
        instanceId: ${spring.application.name}:${vcap.application.instance_id:${spring.application.instance_id:${random.value}}}

有了此元數(shù)據(jù),并在本地主機(jī)上部署了多個(gè)服務(wù)實(shí)例,隨機(jī)值將在其中加入以使實(shí)例唯一。在Cloudfoundry中,vcap.application.instance_id將自動(dòng)在Spring Boot應(yīng)用程序中填充,因此將不需要隨機(jī)值。

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

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)