Eureka-service-discovery-ohne Feder-boot
Ich geschrieben habe, eine spring-boot-micro-service und ein REST-client. Der Kunde ist ein Teil von einem anderen Modul und machen RESTful-Aufrufe an den micro-service. Der micro-service registriert mit der Eureka-registry und ich möchte, dass meine Kunden (Die nicht in einer spring-boot-Projekt) zur Nutzung des Eureka-Abfrage und erhalten die service-Endpunkte.
Mein problem ist, da der client nicht eine Spring-Boot-Anwendungen, die ich nicht verwenden können, die Anmerkungen wie @SpringBootApplication
, @EnableDiscoveryClient
und die DiscoveryClient
ist nicht sich auto-Kabel an die Anwendung. Ist es irgendwie manuell auto-Draht, der DiscoveryClient
bean der client ohne die Anmerkungen ?
- Überprüfen Sie die
@EnableDiscoveryClient
annotation, finden Sie die Konfiguration, importieren und duplizieren Sie diese in Ihr eigenes Projekt.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gut, das ist, wie ich Es Tat. Im Grunde ist es viel einfacher, als ich es erwartet hatte. Im folgenden wurde kopiert von Netflix eureka-Projekt.
Außerdem müssen Sie eine Konfigurations-Datei in den Klassenpfad. Eureka-client verwendet diese Datei zu Lesen, die Informationen über die eureka-Servern.
Auch Sie haben, um den eureka-client als Abhängigkeit. Eureka1 JDK7 unterstützt, obwohl ein Teil davon wurde mit JDK8. Allerdings hatte ich zu älteren Versionen von "archaius-core" und "servo-core" zu machen, laufen mit JDK7.
Eureka2 voll unterstützt JDK7.
Entweder verwenden Sie die netflix-eureka-client ohne Feder-cloud und konfigurieren müssen alle von sich selbst (was bedeutet duplizieren EurekaDiscoveryClientConfiguration)
Oder Sie laufen konnte einen Beiwagen service. Das sidecar enthält eine zuul-proxy, der die würde der proxy-Dienste vor, die von eureka. Haben Sie einen Blick int die Spring Cloud Docs - Polyglott-Unterstützung mit Beiwagen
Wollen Zugriff auf Eureka, die von legacy-Feder ( nicht-boot ) ist auch einfach gemacht wie @EnableEureka und @EnableFeignClient
Dies ist der nächste, den ich bekommen konnte, dass es funktioniert . Dieses Beispiel ist verfügbar in Eureka-Beispiele in Git-Hub
Mein client