Présentation du projet de construction de l'architecture du système du centre commercial Heima Taotao

  • Le projet dans le curriculum vitae:
    Nom du projet: Centre commercial en ligne
    Introduction du projet: Recherche de projets open source pendant l'école, apprentissage de la pratique personnelle et jeter de bonnes bases pour le parcours d'apprentissage javaWeb.
    Environnement de projet: SSM / SSH + dubbo + nginx + servlet + redis + mysqlProject
    responsabilités: étudier et étudier principalement l'utilisation de composants distribués, la construction de projets et la construction de clusters de machines virtuelles, en même temps écrire le code métier d'arrière-plan, réaliser l'affichage de la page, Fonctions de base des centres commerciaux tels que les systèmes utilisateur, les systèmes administrateur, les systèmes de commande et les paniers d'achat.
  1. Présentez d'abord la logique métier du projet. Outre la fonction d'enregistrement des utilisateurs, il existe deux modules principaux, le service marchandise et le service commande.
    Le service de marchandise implémente des fonctions telles que la consultation des listes de produits, la pagination, etc., et la consultation des informations sur les marchandises,
    et le service des commandes génère des commandes et les ajoute à la base de données par le biais des informations utilisateur et des informations sur les marchandises.

  2. Le système de centre commercial a souvent un grand nombre de visites d'utilisateurs, donc pour améliorer les performances, j'utilise dubbo pour construire mon système de centre commercial Taotao distribué. Tout d'abord, je divise la connexion et l'enregistrement des utilisateurs, l'affichage de la page d'accueil du centre commercial et d'autres fonctions fragmentaires en un service et les marchandises Les fonctions pertinentes sont considérées comme un service, le système de commande est considéré comme un service, trois services, puis utilise tomcat pour occuper différents ports pour démarrer, utilise zookeeper pour terminer l'enregistrement et la découverte des services, et sert les appels à distance entre les services via les services RPC. Un tel service unique pour améliorer les performances

  3. Et pour atteindre une haute disponibilité et des performances élevées, l'équilibrage de charge est effectué sur les services de marchandises. Autrement dit, trois services de marchandises identiques sont démarrés, puis le proxy inverse nginx est utilisé pour accéder aux services de marchandises en mode d'interrogation. De cette façon, si un certain service de produits de base est en panne, cela n'affecte toujours pas le fonctionnement normal du service, car il y a toujours deux services en cours d'exécution et, en même temps, le volume simultané de services de produits de base augmente pendant une certaine période. Après tout, il y a trois services.

  4. Pour un seul point de défaillance, si zookeeper se bloque, le service ne peut pas être utilisé, donc zookeeper existe en tant que cluster, et vous pouvez mentionner le principe CAP (C: forte cohérence. A: disponibilité. P: tolérance aux pannes de partition).

  5. En fait, il y a une colonne de produits populaires sur la page d'accueil du produit (c'est-à-dire les produits qui ont été visités tout le temps). Redis est utilisé ici comme cache, qui est également ajouté à redis lorsque la demande est renvoyée aux données du produit. Les informations, après tout, le cache existe en mémoire. Le fonctionnement direct de la mémoire est non seulement rapide, mais le nombre de requêtes qu'il contient est beaucoup plus élevé que le nombre de requêtes de base de données.

  • Plus tard, j'ai découvert les microservices, qui sont des services relativement petits. Une certaine fonction du projet peut être un service, qui peut être déployé et exécuté séparément.
    En fait, le sentiment est de diviser un service en plusieurs services pour une implémentation simple de distribué et peut ensuite s'appuyer sur dubbo, zookeeper et d'autres composants pour compléter les fonctions distribuées.

Après avoir appris les composants de springcloud comme eureka, l'enregistrement et la découverte de services peuvent être réalisés, hstrix peut obtenir un fusible de service et une dégradation de service, une limitation de courant, etc.

A publié 34 articles originaux · Likes0 · Visites 1089

Je suppose que tu aimes

Origine blog.csdn.net/qq_42634696/article/details/105278696
conseillé
Classement