Maison Java javaDidacticiel Analyse approfondie de la pratique Eureka de springCloud

Analyse approfondie de la pratique Eureka de springCloud

Jul 20, 2018 am 11:30 AM

1. Première introduction à springcloud

Les microservices sont une approche architecturale qui nécessitera à terme une architecture technique pour être mise en œuvre.

Il existe de nombreuses façons de mettre en œuvre des microservices, mais la plus populaire est Spring Cloud

Ce que Spring fait le mieux, c'est l'intégration, en prenant les meilleurs frameworks du monde et en les intégrant dans vos propres projets milieu.

Il en va de même pour Spring Cloud. Il intègre certaines des technologies les plus populaires actuellement et implémente des fonctions telles que : la gestion de la configuration, la découverte de services, le routage intelligent, l'équilibrage de charge, les fusibles, le bus de contrôle, l'état du cluster, etc. sur. Ses principaux composants comprennent :

  • Eureka : Centre d'inscription

  • Zuul : Passerelle de service
  • Ruban : Équilibrage de charge

  • Feign : Appel de service

  • Hystix : fusible

Aujourd'hui, nous faisons principalement connaissance avec le centre d'enregistrement Eureka de springcloud

Voici un exemple concret :

Avant l'émergence du covoiturage en ligne, les gens ne pouvaient appeler un taxi qu'en sortant. Certaines voitures particulières souhaitent être louées mais ne sont pas qualifiées et sont appelées voitures noires. Beaucoup de gens souhaitent réserver un taxi, mais malheureusement, il y a trop peu de taxis et ce n'est pas pratique. Il y a beaucoup de voitures particulières mais ils n'osent pas les arrêter, et parmi les voitures dans la rue, qui sait lesquelles sont prêtes à transporter des gens. L’un veut et l’autre est prêt à donner, mais il y a un manque d’introduction et de gestion.

À cette époque, des plateformes de covoiturage en ligne comme Didi sont apparues. Toutes les voitures privées qui souhaitent transporter des passagers doivent s'inscrire auprès de Didi et enregistrer votre modèle de voiture (type de service) et vos informations d'identité (coordonnées). Des voitures privées fournissant de tels services peuvent être trouvées sur Didi et elles sont clairement visibles d'un seul coup d'œil.

Ceux qui souhaitent appeler une voiture à ce moment-là n'ont qu'à ouvrir l'application, saisir votre destination, sélectionner le modèle de voiture (type de service) et Didi organisera automatiquement une voiture qui répond à vos besoins pour vous servir. .

Retournez à Eureka de Springcloud. Eureka est comme Didi, responsable de la gestion et de l'enregistrement des informations sur les fournisseurs de services. Les appelants n'ont pas besoin de trouver les services eux-mêmes, mais d'informer Eureka de leurs besoins, et Eureka vous indiquera ensuite les services qui répondent à vos besoins. Dans le même temps, le fournisseur de services et Eureka sont surveillés via le mécanisme “心跳” Lorsqu'un problème survient avec un fournisseur de services, Eureka le supprimera naturellement de la liste de services.

Cela réalise l'enregistrement, la découverte et la surveillance automatiques de l'état des services.

Analyse approfondie de la pratique Eureka de springCloud

Eureka : C'est le centre d'enregistrement du service (peut être un cluster), exposant sa propre adresse au monde extérieur

Fournisseur : Enregistrez vos informations auprès Eureka après le démarrage (adresse, quels services sont fournis)

Consommateur : Abonnez-vous à Eureka pour un service, Eureka enverra une liste de toutes les adresses des fournisseurs du service correspondant au consommateur et la mettra à jour régulièrement

Heartbeat (renouvellement) : les prestataires actualisent régulièrement leur statut vers Eureka via http

Pratique :

Organigramme du centre d'enregistrement Eureka :

Analyse approfondie de la pratique Eureka de springCloud

Complétez le fichier pom.xml et ajoutez des dépendances

Voici les principales parties du fichier pom

<parent>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-parent</artifactId>
   <version>2.0.3.RELEASE</version>
   <relativePath/> <!-- lookup parent from repository -->
</parent>

<properties>
   <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
   <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
   <java.version>1.8</java.version>
   <spring-cloud.version>Finchley.RELEASE</spring-cloud.version>
</properties>

<dependencies>
   <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
   </dependency>
   <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
   </dependency>

   <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
      <scope>test</scope>
   </dependency>
</dependencies>

<dependencyManagement>
   <dependencies>
      <dependency>
         <groupId>org.springframework.cloud</groupId>
         <artifactId>spring-cloud-dependencies</artifactId>
         <version>${spring-cloud.version}</version>
         <type>pom</type>
         <scope>import</scope>
      </dependency>
   </dependencies>
</dependencyManagement>

<build>
   <plugins>
      <plugin>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
   </plugins>
</build>
Copier après la connexion

Modifier la classe de démarrage

@SpringBootApplication
@EnableEurekaServer // 声明这个应用是一个EurekaServer
public class SpringcloudEurekaServerApplication {

   public static void main(String[] args) {

      SpringApplication.run(SpringcloudEurekaServerApplication.class, args);
   }
}
Copier après la connexion

Écrire la configuration application.yml

server:
  port: 8081 # 端口
spring:
  application:
    name: eureka-server # 应用名称,会在Eureka中显示
eureka:
  client:
    register-with-eureka: false # 是否注册自己的信息到EurekaServer,默认是true
    fetch-registry: false # 是否拉取其它服务的信息,默认是true
    service-url: # EurekaServer的地址,现在是自己的地址,如果是集群,需要加上其它Server的地址。
      defaultZone: http://127.0.0.1:${server.port}/eureka
Copier après la connexion

Exécuter le projet : visitez http://127.0.0.1:8081

Analyse approfondie de la pratique Eureka de springCloud

En ce moment, un Eureka Le centre d'enregistrement a été créé avec succès

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Retour sur l'interview Série de 25 plans de Spring Cloud Retour sur l'interview Série de 25 plans de Spring Cloud Aug 24, 2023 pm 03:57 PM

Spring Cloud est actuellement très populaire et constitue presque l'une des compétences nécessaires pour les développeurs Java. Il est normal qu’on pose cette question lors de l’entretien. De nombreuses personnes l’utilisent depuis longtemps mais échouent à l’entretien sans en comprendre les principes.

Guide de comparaison et de sélection : comparaison des fonctions de Spring Cloud et Spring Boot Guide de comparaison et de sélection : comparaison des fonctions de Spring Cloud et Spring Boot Dec 29, 2023 pm 06:36 PM

SpringCloud et SpringBoot sont actuellement les frameworks open source les plus populaires dans le domaine Java. Ils fournissent respectivement un ensemble complet d'architectures de microservices et de solutions pour créer rapidement des applications. Cet article comparera leurs fonctions et donnera un guide de sélection pour aider les lecteurs à comprendre leurs avantages et les scénarios applicables. SpringBoot est un framework de développement d'applications Java. Il fournit un processus de développement simplifié et intègre un grand nombre de fonctions et de composants couramment utilisés, réduisant ainsi la charge de travail du développeur.

Analyse de l'instance de test d'utilisation SpringCloud-Spring Boot Starter Analyse de l'instance de test d'utilisation SpringCloud-Spring Boot Starter May 16, 2023 am 11:10 AM

Qu’est-ce que SpringBootStarter ? SpringBootStarter est un concept proposé dans le composant SpringBoot, qui simplifie de nombreuses configurations lourdes. En introduisant divers packages SpringBootStarter, vous pouvez rapidement créer l'échafaudage d'un projet. Par exemple, certains de ceux que nous utilisons souvent : spring-boot-starter-web : spring-boot-starter-data-redis : spring-boot-starter-data-mongodb : spring-boot-starter-data-jpa : spring -b

Quels sont les cinq composants principaux de springcloud Quels sont les cinq composants principaux de springcloud Jun 12, 2023 pm 03:51 PM

Les cinq composants principaux de springcloud sont : 1. Eureka, qui implémente la gouvernance des services ; 2. Ribbon, qui fournit des algorithmes d'équilibrage de charge logiciel côté client ; 3. Disjoncteur Hystrix, qui empêche une application d'essayer d'effectuer une opération plusieurs fois ; 4. Zuul, qui dispose d'une passerelle API, de routage, d'équilibrage de charge et d'autres fonctions ; 5. Config, pour la gestion de la configuration ;

Comparaison et analyse des méthodes d'application de SpringCloud et SpringBoot dans le domaine des microservices Comparaison et analyse des méthodes d'application de SpringCloud et SpringBoot dans le domaine des microservices Dec 29, 2023 pm 03:45 PM

Ces dernières années, avec l’essor du cloud computing et de l’architecture distribuée, l’application de l’architecture de microservices est devenue de plus en plus répandue. En tant que frameworks importants dans le développement Java, Spring Cloud et Spring Boot jouent un rôle important dans la mise en œuvre des microservices. Cependant, de nombreuses personnes ont encore quelques doutes sur leurs différentes méthodes d’application dans le domaine des microservices. Cet article explorera l'application de Spring Cloud et Spring Boot dans les microservices sous différents angles. Tout d’abord, découvrons Spri

Idée Quelles sont les méthodes courantes de chargement et de débogage à chaud de Springboot SpringCloud ? Idée Quelles sont les méthodes courantes de chargement et de débogage à chaud de Springboot SpringCloud ? May 18, 2023 pm 05:43 PM

Description du scénario Pendant le processus de développement du projet, lorsque vous devez modifier et déboguer, vous devez souvent redémarrer le projet à chaque fois, ce qui fait perdre du temps. Voici deux méthodes couramment utilisées que j'ai compilées. La première consiste à modifier la méthode de configuration de démarrage. (principalement pour le mode débogage). Cliquez sur Configuration de démarrage = 》 modifier les configurations... Modifier les classes de mise à jour et l'action de mise à jour sous la configuration : mettre à jour les touches de raccourci lorsque l'utilisateur effectue activement des mises à jour : Ctrl+F9 sur la désactivation du cadre : lorsque la fenêtre d'édition perd le focus.

La différence entre SpringCloud et SpringBoot d'un point de vue architectural La différence entre SpringCloud et SpringBoot d'un point de vue architectural Dec 29, 2023 pm 04:13 PM

La différence entre Spring Cloud et Spring Boot d'un point de vue architectural Introduction : À l'ère d'Internet d'aujourd'hui, la création d'un système distribué est devenue une exigence nécessaire. SpringBoot et SpringCloud sont nés pour répondre à ce besoin. Bien qu'il s'agisse de deux solutions fournies par le framework Spring, il existe des différences importantes d'un point de vue architectural. Cet article commencera d'un point de vue architectural et analysera SpringBoot et SpringCl.

Quelle est la différence entre springcloud et springboot Quelle est la différence entre springcloud et springboot Dec 28, 2023 pm 03:34 PM

La différence entre springcloud et springboot : 1. Fonction ; 2. Utilisation ; 3. Objectif initial ; 5. Intégration ; 7. Complexité ; et l'exploitation et l'entretien. Introduction détaillée : 1. Fonction. La fonction principale de Spring Boot est de fournir un moyen rapide de développement de microservices, de simplifier les fichiers de configuration et d'améliorer l'efficacité du travail. Spring Cloud est un cadre de gestion complet utilisé pour fournir un cadre de gestion complet pour la gestion des microservices. cadre, etc

See all articles