Ermitteln und Registrieren Ihrer Spring Boot-Anwendungen

Hinweis

Azure Spring Apps ist der neue Name für den Azure Spring Cloud-Dienst. Obwohl der Dienst umbenannt wurde, wird der alte Name noch an einigen Stellen verwendet, solange wir Ressourcen wie Screenshots, Videos und Diagramme aktualisieren.

Dieser Artikel bezieht sich auf: ✔️ Standardverbrauch und dedizierte (Vorschau) ✔️ Basic/Standard ❌ Enterprise

In diesem Artikel erfahren Sie, wie Sie Ihre Anwendung mithilfe der Spring Cloud Service Registry registrieren.

Dienstregistrierung und -ermittlung sind wichtige Anforderungen für die Verwaltung einer Liste der aufzurufenden Live-App-Instanzen sowie für das Routing und den Lastenausgleich eingehender Anforderungen. Das manuelle Konfigurieren der einzelnen Clients ist zeitaufwendig und kann menschliche Fehler verursachen. Azure Spring Apps bietet zwei Optionen, um dieses Problem zu lösen:

Hinweis

Um die Dienstregistrierung im Standardverbrauchs- und dedizierten Plan zu verwenden, müssen Sie sie zuerst aktivieren. Weitere Informationen finden Sie unter "Aktivieren und Deaktivieren von Eureka Server" in Azure Spring Apps.

  • Verwenden Sie den Kubernetes-Dienstermittlungsansatz für Aufrufe zwischen Ihren Apps.

    Azure Spring Apps erstellt einen entsprechenden Kubernetes-Dienst für jede App, die darin ausgeführt wird, mit dem App-Namen als Kubernetes-Dienstname. Sie können Aufrufe aus einer App an eine andere App aufrufen, indem Sie den App-Namen in einer HTTP/HTTPS-Anforderung wie http(s)://{app name}/path verwenden. Dieser Ansatz eignet sich auch für den Enterprise-Plan. Weitere Informationen finden Sie im Kubernetes-Registrierungscodebeispiel.

    Hinweis

    Dieser Ansatz eignet sich nicht für Standardverbrauch und dedizierte (Vorschau).

  • Verwenden Sie die Managed Spring Cloud Service Registry (OSS) in Azure Spring Apps.

    Nach der Konfiguration steuert ein Dienstregistrierungsserver die Dienstregistrierung und -ermittlung für Ihre Anwendungen. Der Dienstregistrierungsserver verwaltet eine Registrierung der Live-App-Instanzen, aktiviert den clientseitigen Lastenausgleich und entkoppelt die Dienstanbieter von den Clients, ohne dafür DNS zu benötigen.

Informationen zum Einrichten der Dienstregistrierung für eine Steeltoe-App finden Sie unter Vorbereiten einer Java Spring-Anwendung für die Bereitstellung in Azure Spring Apps.

Registrieren Ihrer Anwendung mithilfe der Spring Cloud-Dienstregistrierung

Bevor Ihre Anwendung die Dienstregistrierung und -ermittlung mithilfe der Spring Cloud-Dienstregistrierung verwalten kann, müssen Sie die folgende Abhängigkeit für spring-cloud-starter-netflix-eureka-client in Ihrer pom.xml-Datei hinzufügen:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>

Aktualisieren der Klasse der obersten Ebene

Fügen Sie schließlich der Klasse der obersten Ebene Ihrer Anwendung eine Anmerkung hinzu, wie im folgenden Beispiel gezeigt:

package foo.bar;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;

@SpringBootApplication
@EnableEurekaClient
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

Der Spring Cloud Service Registry-Serverendpunkt wird als Umgebungsvariable in Ihre Anwendung eingefügt. Anwendungen können sich selbst beim Dienstregistrierungsserver registrieren und andere abhängige Anwendungen ermitteln.

Hinweis

Es kann einige Minuten dauern, bis die Änderungen vom Server an alle Anwendungen weitergegeben wurden.

Nächste Schritte

In diesem Artikel haben Sie erfahren, wie Sie Ihre Anwendung mithilfe der Spring Cloud-Dienstregistrierung registrieren. Informationen zum Zugreifen auf die Spring Cloud Service Registry mithilfe der rollenbasierten Zugriffssteuerung (RBAC) von Microsoft Entra finden Sie unter Access Config Server and Service Registry.