Explication de base de Dubbo+zokeeper
L'essence de dubbo : un package Jar, un framework distribué et un framework distribué pour les appels de service à distance.
1. Qu'est-ce que le dubbo ?
1) Puisqu'il s'agit d'un enseignement novice, de nombreux étudiants ne doivent pas comprendre ce que sont les appels de service distribués et à distance, pourquoi ils doivent être distribués et pourquoi ils ont besoin d'appels à distance. . Je vais simplement dessiner un tableau comparatif pour illustrer (voir la figure 1 de la figure 2. Il est dessiné sur une planche à dessin, veuillez ne pas pulvériser).
Si vous y réfléchissez, dans le passé, tout était sur le même serveur, et la méthode d'appel était appelée directement et naturellement, pas de problème. Maintenant, en raison de l'augmentation de la demande, un grand nombre d'entre eux ont été divisés et déployés sur différents serveurs. Est-il vrai qu'ils étaient tous sur un seul serveur par rapport à avant ? devenir un appel à distance ? Alors comment appeler naturellement des méthodes sur le même serveur qu’avant ? dubbo pour le résoudre. C'est l'avantage de dubbo ci-dessous.
2. Quels sont les avantages de Dubbo ?
1. L'invocation transparente de méthodes à distance, tout comme l'appel de méthodes locales, nécessite une configuration simple et aucune intrusion d'API.
2. Les mécanismes d'équilibrage de charge souple et de tolérance aux pannes peuvent remplacer les équilibreurs de charge matériels tels que F5 sur l'intranet, réduisant ainsi les coûts et les points uniques.
3. Enregistrement et découverte automatiques du service, plus besoin d'écrire l'adresse du fournisseur de services. Le centre d'enregistrement interroge l'adresse IP du fournisseur de services en fonction du nom de l'interface et peut ajouter ou supprimer en douceur des fournisseurs de services. . (Expliqué ci-dessous)
Dubbo utilise une méthode de configuration Spring complète pour accéder de manière transparente aux applications. Il n'y a aucune intrusion d'API dans l'application. Vous devez uniquement utiliser Spring pour charger les charges de Dubbo basées sur l'extension Schema de Spring.
3. Le schéma d'architecture Dubbo est le suivant :
Avant d'expliquer son schéma d'architecture, vulgarisons quelques concepts.
Description du rôle du nœud :
Fournisseur (producteur) : le fournisseur de services qui expose les services.
Consommateur : le consommateur de services qui appelle des services distants.
Comme le montre la figure, nous pouvons simplement comprendre que web1234 doit appeler le service du service1234, donc web1234 est le consommateur et service1234 est le producteur.
Si le consommateur appelle le service du producteur selon ce qui précède, est-ce comme indiqué ci-dessous :
Vous êtes tu as le vertige en le regardant ? Faible ou pas ? Faible ou pas ? Bref, j'avais le vertige, et si on le distribuait encore plus ? , nous en avons donc besoin :
Registry : le centre d'enregistrement pour l'enregistrement et la découverte des services. Dubbo recommande le gardien de zoo. Qu'est-ce que le gardien de zoo ? Zookeeper est un framework pour le traitement de cohérence dans les systèmes distribués. Pour plus d'informations, vous pouvez consulter mon article précédent : Disons-le ainsi, zookeeper est très simple. Il s'agit en fait d'un framework et est utilisé pour le traitement de cohérence. Pour faire simple, ZooKeeper est un intermédiaire. Les vendeurs de biens immobiliers (producteurs) mettent les informations immobilières sur l'intermédiaire (centre d'enregistrement), et les personnes qui souhaitent acheter des biens immobiliers (consommateurs) s'adressent à l'intermédiaire pour obtenir une liste de ressources immobilières. Alors, notre image devient comme ceci :
N'est-ce pas beaucoup mieux ? Si cela ne suffit pas, nous avons également besoin d'un centre de surveillance (à quoi sert-il ? Bien sûr, c'est pour la surveillance. Que dois-je faire si l'appel échoue ? Que dois-je faire s'il se bloque ?) : Moniteur : Le centre de surveillance qui compte le nombre d'appels et l'heure d'appel du service. (Plus de dessin)
Ensuite, le Provider est placé dans le conteneur à exécuter, qui est appelé le service Container pour exécuter le conteneur. (Plus de dessin)
L'architecture dubbo finale, comme le montre la figure (en partant de 0) :
Recommandations associées :
Architecture Taobao Amoeba Environnement de base de données distribuée MySQL_MySQL
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!

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Cet article écrira un exemple détaillé pour parler du développement réel de dubbo+nacos+Spring Boot. Cet article ne couvrira pas trop de connaissances théoriques, mais écrira l'exemple le plus simple pour illustrer comment dubbo peut être intégré à nacos pour créer rapidement un environnement de développement.

[[443126]] Permettez-moi de commencer par quelques mots. Je réfléchis souvent à de nombreuses questions techniques du type « pourquoi » lorsque je marche. Parfois, je réfléchis longuement à une question, et ce n'est pas fini tant que je n'arrive pas à convaincre. moi-même de chaque point de la question. Je souhaite donc enregistrer ces réflexions et rédiger un article qui pourra être utilisé comme une nouvelle série. Vous ne pourrez peut-être pas voir le code dans ces articles, mais vous pourrez avoir un aperçu de certains problèmes qui passent facilement inaperçus, ainsi que du « pourquoi » plus profond du problème. Aujourd'hui, nous vous proposons le premier article, pourquoi Dubbo devrait-il être réécrit en Go Dubbo, né à Alibaba et open source en 2011, a traversé 10 ans. En 2019, il a été réécrit en Go et open source. Deux ans plus tard, il est passé de la version originale V1.0.0 à la version V3.0.0.

Préface Avant de présenter Dubbo, comprenons d'abord les concepts de base : Dubbo est un framework RPC. RPC est un appel de procédure distante (appel de procédure distante). Il est utilisé dans l'architecture d'application unique et l'architecture d'application verticale avant l'architecture distribuée. . Ce sont tous des appels de procédure locale. Il permet à un programme d'appeler une procédure ou une fonction dans un autre espace d'adressage (généralement une autre machine partagée sur un réseau) sans que le programmeur ait à coder explicitement les détails de l'appel à distance. Les appels à distance entre applications d'architecture distribuée nécessitent que le framework RPC rende les appels à distance aussi simples que les appels locaux. Le framework Dubbo possède le composant suivant Consumer, qui appelle le service distant

Si vous maîtrisez déjà Dubbo, cet article ne vous convient pas, mais si vous souhaitez comprendre Dubbo et apprendre Dubbo, il vous convient très bien.

Introduction Dubbo est un framework de service open source hautes performances et excellent d'Alibaba, qui permet aux applications de réaliser des fonctions de sortie et d'entrée de service via un RPC hautes performances, et peut être intégré de manière transparente au framework Spring. Il offre trois fonctionnalités principales : l'invocation de méthodes à distance orientées interface, la tolérance aux pannes et l'équilibrage de charge intelligents, ainsi que l'enregistrement et la découverte automatiques des services. Présentation Le 23 juin 2020, ApacheDubbo a officiellement publié un avis de risque concernant l'exécution de code à distance ApacheDubbo. Le numéro de vulnérabilité est CVE-2020-1948 et le niveau de vulnérabilité est : risque élevé. ApacheDubbo est un framework JavaRPC open source léger et hautes performances. Il offre trois fonctionnalités principales : à distance orientée interface.

A quoi sert SPI ? Par exemple, nous avons maintenant conçu un nouveau framework de journalisation : "super-logger". Par défaut, les fichiers XML sont utilisés comme fichiers de configuration de notre journal, et une interface pour l'analyse des fichiers de configuration est conçue : packagecom.github.kongwu.spisamples; publicinterfaceSuperLoggerConfiguration{voidconfigure(StringconfigFile);} Ensuite, il existe une implémentation XML par défaut : packagecom .github .kongwu.spisamples;publiccl

Explication des principes et mécanismes de Dubbo : 1. Composants de base ; 2. Principes de communication ; 3. Tolérance aux pannes de cluster ; 4. Découverte et enregistrement automatiques ; 5. Équilibrage de charge et routage ; , Évolutivité ; 9. Sécurité ; 10. Intégration avec Spring ; 11. Intégration avec d'autres technologies. Introduction détaillée : 1. Composants de base, y compris le centre d'enregistrement, le centre de surveillance, le consommateur de services et le fournisseur de services ; 2. Dubbo utilise le cadre de communication réseau pour effectuer une variété de connexions à long terme, etc.

1. Description de la relation d'appel Dubbo 1.1 Les composants ici sont principalement composés de quatre parties : Fournisseur : le fournisseur de services qui expose le service Protocole : responsable des données d'interaction du protocole entre le fournisseur et le consommateur Service : les informations réelles du service métier, qui. peut être compris.Interface et implémentation Conteneur : Environnement d'exploitation de Dubbo Consommateur : Le consommateur de service qui appelle le service distant Protocole : Responsable des données d'interaction de protocole entre le fournisseur et le consommateur Cluster : Perçoit les informations de liste du côté du fournisseur Proxy : Peut être compris comme l'agent d'appel de service du fournisseur, qui reprend la logique d'appel d'interface dans Consumer ●Register : enregistrement
