W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
Spring Cloud調(diào)用微服務(wù)的客戶端應(yīng)用程序應(yīng)該對(duì)依靠客戶端負(fù)載平衡功能感興趣,以便自動(dòng)發(fā)現(xiàn)它可以在哪個(gè)端點(diǎn)到達(dá)給定服務(wù)。該機(jī)制已在
spring-cloud-kubernetes-ribbon
項(xiàng)目中實(shí)現(xiàn),其中Kubernetes客戶端填充Ribbon ServerList
,其中包含有關(guān)此類端點(diǎn)的信息。
該實(shí)現(xiàn)是以下啟動(dòng)器的一部分,可以通過(guò)將其依賴項(xiàng)添加到pom文件中來(lái)使用該實(shí)現(xiàn):
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-kubernetes-ribbon</artifactId> <version>${latest.version}</version> </dependency>
填充端點(diǎn)列表后,Kubernetes客戶端通過(guò)匹配Ribbon Client批注中定義的服務(wù)名稱來(lái)搜索位于當(dāng)前名稱空間或項(xiàng)目中的已注冊(cè)端點(diǎn),如下所示:
@RibbonClient(name = "name-service")
您可以使用以下格式,在application.properties
中(通過(guò)應(yīng)用程序?qū)S玫?code class="literal" i="5577">ConfigMap)提供屬性,以配置Ribbon的行為:<name of your service>.ribbon.<Ribbon configuration key>
,其中:
<name of your service>
對(duì)應(yīng)于您在Ribbon上訪問(wèn)的服務(wù)名稱,該名稱是使用@RibbonClient
批注配置的(例如上例中的name-service
)。
<Ribbon configuration key>
是
Ribbon的CommonClientConfigKey
類
定義的Ribbon配置鍵之一
。
此外,spring-cloud-kubernetes-ribbon
項(xiàng)目定義了兩個(gè)附加的配置鍵,以進(jìn)一步控制Ribbon與Kubernetes的交互方式。特別是,如果端點(diǎn)定義了多個(gè)端口,則默認(rèn)行為是使用找到的第一個(gè)端口。要更具體地選擇在多端口服務(wù)中使用哪個(gè)端口,可以使用【7 /】鍵。
如果您想指定應(yīng)在哪個(gè)Kubernetes命名空間中查找目標(biāo)服務(wù),則可以使用KubernetesNamespace
鍵,在這兩個(gè)實(shí)例中都記住要為這些鍵加上您的服務(wù)名和ribbon
前綴(如前所述)。
以下示例使用此模塊進(jìn)行功能區(qū)發(fā)現(xiàn):
您可以通過(guò)在應(yīng)用程序?qū)傩晕募性O(shè)置spring.cloud.kubernetes.ribbon.enabled=false
鍵來(lái)禁用Ribbon發(fā)現(xiàn)客戶端。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: