Préface:
Architecture de microservice basée sur les nuages de printemps, tous les microservices doivent être enregistrés dans le registre. Si le registre est bloqué ou écrasé, l'ensemble du système ne peut pas continuer à fournir des services normalement. Par conséquent, le registre doit être regroupé ici, en d'autres termes, la haute disponibilité (HA)
prémisse:
Lisez et terminez le projet du premier registre sans changer l'environnement. Cet article est une simulation de haute disponibilité et peut copier les projets dans deux centres de registre pour modifier séparément leurs fichiers de configuration respectifs pour obtenir le même effet.
Modifiez les hôtes et ajoutez deux lignes à la fin du fichier comme suit:
127.0.0.1 Peer1127.0.0.1 Peer2
Il est recommandé d'utiliser le bloc-notes ++. S'il est win10, il vous rappellera de donner des autorisations, de confirmer, puis de le sauver.
Construction du projet:
Ouvrez le projet dans le centre de registre et créez une application-peer1.properties sous SRC / Ressources
#Application Nom Spring.Application.Name = Eureka-Server # Fournissez le port de service 1111Server.port = 1111 # Le nom de domaine qui fournit le service. Ici, nous modifions eureka.instance.hostname = peer1 # Inscrivez-vous avec le deuxième centre d'enregistrement eureka.client.service-url.defaultZone = http: // peer2: 1112 / eureka /
Créez une application-peer2.properties sous SRC / Ressources
#Le nom de l'application est le même que le premier registre, printemps.application.name = eureka-server # Fournir le port de service 1112Server.port = 1112 # Le nom de domaine qui fournit le service. Ici, nous modifions eureka.instance.hostname = peer2 # Inscrivez-vous dans le premier registre, eureka.client.service-url.defaultZone = http: // peer1: 1111 / eureka /
Cet article utilise l'idée pour les tests. Tout d'abord, vous devez faire de ce projet un package JAR, car l'outil de compilation Maven et l'outil d'emballage ont été introduits dans pom.xml et le format d'emballage est spécifié en tant que package JAR. Cela se fait directement ici, en haut à droite de l'écran
L'emballage est terminé, le package JAR est situé dans le dossier cible, comme indiqué sur la figure
Terminal ouvert comme indiqué dans l'image, en bas de l'écran
Après l'ouverture du terminal, car le package JAR est dans le répertoire cible et que le répertoire actuel est le répertoire de projet, premier CD du répertoire cible, puis entrez la commande suivante:
Conseils: Afin d'éviter le mauvais nom de fichier lors de la saisie de la commande, vous pouvez saisir les premières lettres du nom du fichier, puis utiliser la touche onglet pour la compléter automatiquement.
Copiez le code comme suit: Java -jar eurekaserverdemo-0.0.1-snapshot.jar --spring.profiles.active = peer1
Après être entré dans cette commande, le projet de fichier de configuration de Peer1 est démarré, comme indiqué sur la figure
Ensuite, nous commençons le deuxième projet, ici nous devons ouvrir un autre terminal, CD au répertoire cible
Remarque: nous utilisons le même projet ici. Les lecteurs peuvent utiliser deux projets pour les tests. Il est important de noter que les ports ne sont pas en conflit.
Copiez le code comme suit: Java -jar eurekaserverdemo-0.0.1-snapshot.jar --spring.profiles.active = peer2
Attendez que le projet commence et termine pour voir s'il y a des erreurs signalées.
test:
Entrée du navigateur: localhost: 1112 pour la visualisation, ou vous pouvez entrer localhost: 1111 pour la visualisation
Conclusion:
Après avoir mis en place un centre d'enregistrement multi-nœuds, la haute disponibilité est obtenue, mais pour le moment, notre application de microservice n'est enregistrée qu'avec ce service, nous devons donc également allouer le chemin de service d'enregistrement du nouveau nœud vers l'application de microservice.
Utiliser "," pour séparer les nœuds multiples, comme indiqué sur la figure
De cette façon, après que le fournisseur de microservice se déconnecte de l'un des endroits, il peut également fournir des services car il s'est inscrit dans d'autres nœuds. Si vous ne souhaitez pas utiliser le nom d'hôte pour accéder au centre d'enregistrement, vous pouvez également utiliser IP, mais vous devez d'abord ajouter une configuration, ce qui par défaut
eureka.instance.prefer-ip-address = true
Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.