Table des matières
1. Que sont les microservices ? " >1. Que sont les microservices ?
Maison Java JavaQuestions d'entretien À combien de ces 9 questions d'entretien sur les microservices pouvez-vous répondre ?

À combien de ces 9 questions d'entretien sur les microservices pouvez-vous répondre ?

Aug 22, 2023 pm 03:46 PM
java面试题

Aujourd'hui, les microservices font partie des compétences nécessaires à nos développeurs Java. Peu importe si vous utilisez réellement l'architecture des microservices dans votre travail, l'intervieweur vous le demandera certainement, alors frère Tian a compilé une liste de questions d'entretien sur les microservices pour vous.

Sans plus attendre, allons droit au but.

1. Que sont les microservices ?

Un service léger unique est généralement un microservice indépendant Les microservices se concentrent sur la mise en œuvre d'une certaine fonction. Par exemple, le système de connexion se concentre uniquement sur la mise en œuvre des fonctions de connexion des utilisateurs. Il sort de la boîte et peut être exécuté indépendamment. Le système d'architecture de microservices est un système distribué, qui divise les modules d'unités de service en fonction des activités, résout les défauts d'un système unique et répond de plus en plus aux besoins commerciaux complexes.

Martin Fowler : À l'heure actuelle, il n'existe pas de définition unifiée et standard du secteur des microservices. Mais d’une manière générale, l’architecture des microservices est un modèle architectural ou un style architectural qui préconise de diviser une seule application en un ensemble de petits services. Chaque service fonctionne selon son propre processus indépendant. Les services coopèrent et se coordonnent les uns avec les autres pour offrir aux utilisateurs une valeur ultime. Utilisez une communication légère entre les services. Chaque service est construit autour d'un métier spécifique et peut être déployé indépendamment dans des environnements de production. De plus, un mécanisme de gestion des services unifié et centralisé doit être évité autant que possible.

En termes simples :

Microservice est une application de service indépendante avec une seule responsabilité. Dans l'outil Intellij Idea, il existe des modules indépendants développés à l'aide de Maven. Plus précisément, il s'agit d'un petit module développé à l'aide de Springboot pour gérer une seule logique métier professionnelle.

Les microservices mettent l'accent sur la taille du service, en se concentrant sur un certain point, résolvant spécifiquement un certain problème/implémentant une application de service correspondante, qui peut être considérée comme un module dans l'idée.

Par exemple, si vous allez à l'hôpital : vos dents sont inconfortables, alors vous allez chez le dentiste. Si vous avez mal à la tête, rendez-vous dans un service du cerveau. Chaque département est un microservice et chaque fonction est un service.

2. Comment les microservices communiquent-ils de manière indépendante ?

Communication synchrone : dobbo via Appel de procédure à distance RPC, springcloud via l'appel json de l'interface REST, etc. Asynchrone : file d'attente de messages, telle que : RabbitMq, ActiveM, Kafka, etc.

3. Quelles sont les différences entre SpringCloud et Dubbo ?

  • Tout d'abord, ce sont tous des cadres de gestion distribués.

  • dubbo est une transmission binaire, qui consomme moins de bande passante. SpringCloud utilise la transmission http, qui a un peu plus de bande passante. Lors de l'utilisation du protocole http, les messages JSON sont généralement utilisés, ce qui consomme plus.

  • Dubbo est difficile à développer, et les packages jar sur lesquels il s'appuie ont de nombreux problèmes les grands projets ne peuvent pas être résolus. L'héritage de tiers de SpringCloud peut être généré en un clic et naturellement intégré.

  • L'accord du protocole d'interface SpringCloud est relativement souple,
    des mesures administratives fortes sont nécessaires pour limiter les mises à niveau désordonnées de l'interface

    .

  • La plus grande différence :
    Spring Cloud abandonne la communication RPC de Dubbo et adopte la méthode REST basée sur HTTP.

  • À proprement parler, ces deux méthodes ont leurs propres avantages et inconvénients. Même si dans une certaine mesure, cette dernière sacrifie la performance des appels de service, elle évite également les problèmes causés par le RPC natif évoqués ci-dessus. De plus, REST est plus flexible que RPC. Le fournisseur de services et l'appelant s'appuient uniquement sur un contrat, et il n'y a pas de forte dépendance au niveau du code. Ceci est plus approprié dans un environnement de microservices qui met l'accent sur une évolution rapide.
À combien de ces 9 questions d'entretien sur les microservices pouvez-vous répondre ?
SpringCloud et Dubbo.png

4. La relation entre SpringBoot et SpringCloud ?

  • SpringBoot : concentrez-vous sur le développement rapide et pratique d'un microservice individuel unique (concentrez-vous sur le microservice) : concentrez-vous sur le cadre global de coordination et de gouvernance des microservices, combinez et gérez les microservices individuels développés par SpringBoot (concentrez-vous sur) ; la macro);

  • SpringBoot peut être utilisé indépendamment sans SpringCloud, mais SpringCloud ne peut pas être utilisé sans SpringBoot, qui est une relation de dépendance.

5. Qu'est-ce qu'un disjoncteur ? Qu’est-ce que le déclassement du service ?

  • La fonction du disjoncteur de service est similaire à celle de notre fusible domestique. Lorsqu'un service devient indisponible ou que le délai de réponse expire, afin d'éviter une avalanche de l'ensemble du système, les appels au service sont temporairement arrêtés.

  • La dégradation du service est basée sur la situation de charge de l'ensemble du système. Pour certaines situations où la charge est relativement élevée, afin d'éviter que certaines fonctions (scénarios métiers) ne soient surchargées ou ne répondent lentement, en interne abandonner temporairement les demandes de certaines interfaces et données non essentielles, et renvoie directement des informations de gestion des erreurs de secours préparées à l'avance. De cette manière, même si un service avec perte est fourni, la stabilité et la disponibilité de l'ensemble du système sont garanties.

6. Quels sont les avantages et les inconvénients des microservices ? Parlez-moi des pièges que vous avez rencontrés dans le projet.

  • Avantages : Couplage lâche, centré sur une seule fonction métier, indépendante des langages de développement, et taille d'équipe réduite. Pendant le développement, vous n'avez pas besoin de connaître grand-chose sur l'entreprise, concentrez-vous simplement sur les fonctions actuelles, qui sont pratiques et centralisées, et les fonctions sont petites et raffinées. Si une fonction d’un microservice est endommagée, cela n’aura pas beaucoup d’impact sur les autres fonctions et le problème peut être rapidement localisé. Les microservices se concentrent uniquement sur le code de logique métier actuel et ne seront pas mélangés avec du HTML, du CSS ou d'autres interfaces. Il peut être associé de manière flexible à la technologie et il est plus confortable d'être indépendant.

  • Inconvénients : à mesure que le nombre de services augmente, la gestion est complexe, le déploiement est complexe, les exigences du serveur augmentent, la pression des communications et des appels de service augmente, les ingénieurs d'exploitation et de maintenance augmentent la pression, les ressources humaines augmentent, les dépendances du système augmentent et la cohérence des données augmente, la surveillance des performances.

7. Quelle est la différence entre eurêka et gardien de zoo ?

zookeeper est un principe CP, forte cohérence et tolérance aux pannes de partition. eureka est le principe AP de disponibilité et tolérance de partition. ZooKeeper Lorsque le nœud maître échoue, ZooKeeper resélectionnera le nœud maître parmi les nœuds restants, ce qui prend trop de temps. Bien qu'il puisse éventuellement être restauré, le service sera indisponible lors de la sélection du nœud maître, ce qui ne peut être toléré. Tous les nœuds d'Eureka sont égaux. Si un nœud raccroche, les autres nœuds maintiendront toujours un service normal.

8. Quelles piles technologiques connaissez-vous sur les microservices ? Citez-en un ou deux.Ar chaius, Ali's Dlamond, etc

Service d'inscription et découverteEurka, Consul, Zookeeper, etc.Appel de serviceRepos (communication de service), RPC (Dubbo), GRpc
Disjoncteur de service Hystrix, Envoy, etc.
Équilibrage de charge Nginx, Ribbon, etc.
Appel d'interface de service (outil client simplifié) Fegin etc.
Mes, sauge queue Kafka、 RabbitMQ, ActiveMQ, etc.
Gestion du centre de configuration des services SpringCloudConfig, Chef, etc.
Routage des services (passerelle API) Zuul, etc.
Surveillance des services Zabbix, Nagios, Metrics, Spectator et plus
Suivi complet des liens Zipkin, Brave, Dapper, etc.
Déploiement de services Docker, OpenStack, Kubernetes, etc.
Kit de développement d'opérations de flux de données SpringCloud Stream (encapsulé avec Redis, Rabbit , kafka, etc. Envoyer et recevoir des messages)
Event Message Bus Spring Cloud Bus

9. Qu'est-ce que l'architecture des microservices ?

Si vous avez compris plus tôt ce que sont les microservices, alors vous comprenez déjà l'architecture des microservices.

L'architecture des microservices consiste à gérer, intégrer et appliquer des microservices. L'architecture des microservices repose sur des microservices et est basée sur des microservices.

Par exemple : Que sont les microservices ont été répertoriés ci-dessus. Dans un hôpital, chaque service est un microservice indépendant, l'hôpital est donc une architecture de microservices à grande échelle, tout comme le directeur peut gérer les services suivants. L'architecture des microservices a principalement cette fonction.

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)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines 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)

Intervieweur : annotations communes et séquence d'exécution de Spring Aop Intervieweur : annotations communes et séquence d'exécution de Spring Aop Aug 15, 2023 pm 04:32 PM

Vous devez connaître Spring, alors parlons de l'ordre de toutes les notifications d'Aop. Comment Spring Boot ou Spring Boot 2 affecte-t-il l'ordre d'exécution d'aop ? Parlez-nous des pièges que vous avez rencontrés en AOP ?

Entretien avec un certain groupe : si vous rencontrez un MOO en ligne, comment devez-vous le résoudre ? Comment le résoudre ? Quelles options ? Entretien avec un certain groupe : si vous rencontrez un MOO en ligne, comment devez-vous le résoudre ? Comment le résoudre ? Quelles options ? Aug 23, 2023 pm 02:34 PM

MOO signifie qu'il existe une vulnérabilité dans le programme, qui peut être causée par la configuration du code ou des paramètres JVM. Cet article explique aux lecteurs comment dépanner lorsqu'un processus Java déclenche le MOO.

Les novices peuvent également rivaliser avec les enquêteurs BAT : CAS Les novices peuvent également rivaliser avec les enquêteurs BAT : CAS Aug 24, 2023 pm 03:09 PM

Le chapitre supplémentaire de la série de programmation simultanée Java, C A S (Comparer et échanger), est toujours dans un style facile à comprendre avec des images et des textes, permettant aux lecteurs d'avoir une conversation folle avec l'intervieweur.

Les questions du test écrit d'Ele.me semblent simples, mais elles déconcertent beaucoup de gens Les questions du test écrit d'Ele.me semblent simples, mais elles déconcertent beaucoup de gens Aug 24, 2023 pm 03:29 PM

Ne sous-estimez pas les questions d’examen écrit de nombreuses entreprises. Il existe des pièges et vous pouvez y tomber accidentellement. Lorsque vous rencontrez ce genre de question de test écrit sur les cycles, je vous suggère de réfléchir calmement et de procéder étape par étape.

La semaine dernière, j'ai eu un entretien avec XX Insurance et c'était cool ! ! ! La semaine dernière, j'ai eu un entretien avec XX Insurance et c'était cool ! ! ! Aug 25, 2023 pm 03:44 PM

La semaine dernière, un ami du groupe est allé passer un entretien avec Ping An Insurance. Le résultat a été un peu regrettable, ce qui est bien dommage, mais j'espère que vous ne vous découragerez pas, comme vous l'avez dit, essentiellement toutes les questions rencontrées. l'entretien peut être résolu en mémorisant les questions de l'entretien. C'est résolu, alors s'il vous plaît, travaillez dur !

5 questions d'entretien à cordes, moins de 10 % des personnes peuvent toutes y répondre correctement ! (avec réponse) 5 questions d'entretien à cordes, moins de 10 % des personnes peuvent toutes y répondre correctement ! (avec réponse) Aug 23, 2023 pm 02:49 PM

​Cet article examinera 5 questions d'entretien sur la classe Java String. J'ai personnellement rencontré plusieurs de ces cinq questions au cours du processus d'entretien. Cet article vous aidera à comprendre pourquoi les réponses à ces questions sont ainsi.

Il est recommandé de collecter 100 questions d'entretien Linux avec réponses Il est recommandé de collecter 100 questions d'entretien Linux avec réponses Aug 23, 2023 pm 02:37 PM

Cet article compte au total plus de 30 000 mots, couvrant la présentation de Linux, le disque, le répertoire, le fichier, la sécurité, le niveau de syntaxe, le combat pratique, les commandes de gestion de fichiers, les commandes d'édition de documents, les commandes de gestion de disque, les commandes de communication réseau, les commandes de gestion du système, la sauvegarde. commandes de compression, etc. Démantèlement des points de connaissances Linux.

Meituan, tu vois si tu peux y répondre ? Meituan, tu vois si tu peux y répondre ? Aug 24, 2023 pm 03:51 PM

Meituan, tu vois si tu peux y répondre ?

See all articles