Apprendre Dubbo1 à partir de zéro - l'histoire des objectifs du projet Internet et du développement de l'architecture

Objectifs d'architecture de projet Internet à grande échelle

Projets traditionnels et projets Internet

Projets traditionnels : une entreprise ou un système, un système rh, un système d'enregistrement

Projets Internet : Tmall, Baidu, jd

articles traditionnels projet internet
Utiliser des groupes employés de l'entreprise Tous les internautes
Concurrence 1-milliers million de milliards
Tolérance du produit haute tolérance tolérance presque zéro
sécurité haute sécurité Vulnérable
Fonction fonction simple fonction complexe
renouveler mise à jour lente mise à jour rapide

D'après le tableau de comparaison, on peut voir que les projets Internet doivent :

Haute simultanéité, réponse rapide, bonne stabilité, bonne expérience utilisateur

Mesurer les métriques de performance du site Web

Temps de réponse : fait référence au temps global nécessaire pour exécuter une requête depuis le début jusqu'à la réception des données de réponse à la fin.

Concurrence : fait référence au nombre de requêtes que le système peut traiter en même temps.

  • Le nombre de connexions simultanées : fait référence au client qui initie une requête au serveur et établit une connexion TCP. Le nombre total de connexions TCP au serveur par seconde

  • Nombre de requêtes : également connu sous le nom de QPS (Query Per Second) fait référence au nombre de requêtes par seconde

    image-20220830115653815
  • Utilisateurs simultanés : combien d'utilisateurs par unité de temps

Débit : fait référence au nombre de requêtes que le système peut traiter par unité de temps.

Haute performance : offre une expérience d'accès rapide.

Haute disponibilité : Les services du site Web sont toujours accessibles normalement.

Évolutif : augmenter/diminuer, augmenter/diminuer la puissance de traitement via le matériel.

Haute évolutivité : faible couplage entre systèmes, ajout/suppression facile de nouvelles fonctions/modules par ajout/suppression.

Sécurité : fournissez des stratégies telles que l'accès sécurisé au site Web, le cryptage des données et le stockage sécurisé.

cluster et distribué

Technologies requises pour les projets Internet à grande échelle : cluster et distribué

grappe

De nombreuses "personnes" travaillent ensemble pour faire la même chose. Par exemple, un restaurant doit couper des légumes, préparer des légumes, laver des plats et servir des plats ; à l'origine, un chef était responsable de tout le travail, puis a recruté de nouveaux chefs, de nouveaux chefs C'est aussi faire tout le travail et partager la pression du chef d'origine. Le nouveau chef et le chef d'origine sont des clusters

distribué

Beaucoup de "personnes" font des choses différentes ensemble. Ces différentes choses s'ajoutent à une grande chose. Le chef d'origine n'est plus responsable de couper les légumes, de laver la vaisselle et de servir les plats, mais recrute trois personnes pour être responsables respectivement, de sorte que chaque personne ne puisse se concentrer que sur une seule chose, et l'efficacité sera très élevée.

Cluster + distribué (évolutif)

Si le restaurant a beaucoup de commandes, alors nous pouvons recruter deux équipes de chefs et diviser les commandes en deux parties. Les deux équipes de chefs sont équivalentes à des clusters, et chaque équipe cuisine de manière distribuée. Ce type d'équipes supplémentaires chemin

image-20220830121317930

Historique du développement de l'architecture

image-20220830144818274

architecture monolithique

Mettez tous les modules d'un programme dans un seul serveur, et une architecture unique multi-machines peut être réalisée en formant un cluster de serveurs polymorphes

image-20220830144941704

Avantages : développement et déploiement pratiques, adaptés aux petits projets

défaut:

  • Démarrage lent du projet
  • Mauvaise fiabilité : un module casse et tout le projet casse
  • mauvaise évolutivité
  • mauvaise évolutivité
  • faible niveau de rendement
architecture verticale

L'architecture verticale fait référence à la division de plusieurs modules d'une architecture monolithique en plusieurs projets indépendants. Former plusieurs architectures monolithiques indépendantes.

image-20220830145315419

Par rapport à l'architecture monolithique, elle est fondamentalement optimisée, mais l'architecture verticale a aussi ses propres défauts :

Chaque application n'interagit pas entre elles, comme la page de connexion, la page d'informations personnelles, etc. Les fonctions requises par chaque module doivent être ajoutées à chaque application, ce qui entraîne des fonctions plus répétitives.

architecture distribuée

Sur la base de l'architecture verticale, les modules répétés sont extraits pour former un module indépendant et devenir un fournisseur de services

RPC : la façon dont les consommateurs appellent les fournisseurs de services

image-20220830145815950

Inconvénients de l'architecture distribuée :

Une fois que le fournisseur de services change, tous les consommateurs doivent changer

Architecture SOA

Les consommateurs et les fournisseurs ne communiquent pas directement, mais interagissent les uns avec les autres via le bus de services

ESB : Enterprise Service Bus, Service Broker. Il fournit principalement un service d'interaction entre services. L'ESB comprend des fonctions telles que : l'équilibrage de charge, le contrôle de flux, le traitement du chiffrement, la surveillance des services, la gestion des exceptions, la surveillance des urgences, etc.

image-20220830150849465

architecture de microservices

L'architecture de microservices est la sublimation de la SOA. L'un des points clés soulignés par l'architecture de microservices est que "l'entreprise doit être entièrement composable et entretenue". Le système d'entreprise unique d'origine sera divisé en plusieurs petites applications. Ces petites applications complètent l'interaction et l'intégration par le biais de services.

image-20220830151320598

Dubbo est un produit de l'ère SOA et SpringCloud est un produit de l'ère des microservices

Suivant : (27 messages) Apprendre Dubbo2 à partir de zéro - qu'est-ce que l'installation de Dubbo et zookeeper_Cui Bubbles-Cat's Blog-CSDN Blog

Je suppose que tu aimes

Origine blog.csdn.net/perturb/article/details/126711950
conseillé
Classement