Heim >Java >javaLernprogramm >Ribbon-Nutzung in Spring Cloud-Anwendungen

Ribbon-Nutzung in Spring Cloud-Anwendungen

无忌哥哥
无忌哥哥Original
2018-07-23 10:08:131843Durchsuche

Ein Load Balancer, der mindestens die folgenden Funktionen bereitstellt:

  • Zur Verwaltung der IP-Adresse und anderer Informationen jedes Servers

  • Gemäß der spezifischen Logik der Serverauswahl

Um grundlegende Lastausgleichsfunktionen zu erreichen, verfügt der Load Balancer von Ribbon über drei Hauptuntermodule:

  • Regel

  • Ping

  • ServerList

Wenn Ribbon in SpringCloud verwendet wird, ist die Konfiguration Dies kann auf zwei Arten erfolgen: Eine ist die Java-Konfiguration und die andere ist die Konfiguration der Konfigurationsdatei.

Konfiguration über Java:

package com.hurricane.learn.springcloud.ribbon;

import org.springframework.cloud.netflix.ribbon.RibbonClient;
import org.springframework.context.annotation.Bean;

@RibbonClient(name="user-service-provider",configuration=MyConfig.class)
public class MyConfig {
	
	@Bean
	public MyRule createMyRule() {
		return new MyRule();
	}

}

Konfiguration der Konfigurationsdatei:

#自定义规则的使用
user-service-provider.ribbon.NFLoadBalancerRuleClassName=com.hurricane.learn.springcloud.ribbon.MyRule

Eine Falle beim Aufrufen von Diensten:

Testen Sie Anrufe zwischen Diensten, rufen Sie weiterhin an. Erfolglos, Eingabeaufforderung :

Request URI does not contain a valid hostname: http://user_service_provider/getUser

Schließlich fand ich heraus, dass es daran lag, dass der Name der Dienstinstanz keine Unterstriche enthalten darf. Sie können darauf zugreifen, indem Sie den Instanznamen in aaa ändern.

Das obige ist der detaillierte Inhalt vonRibbon-Nutzung in Spring Cloud-Anwendungen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn