J'ai récemment entendu parler de springboot. J'ai regardé la vidéo de M. Wang He, un nœud d'alimentation. Le blog d'aujourd'hui parle principalement de ce que font spring, springboot et springcloud ?
Ressource vidéo : https://www.bilibili.com/video/BV1XQ4y1m7ex
Schéma > Découplage
Cadre de développement printemps
AOP du CIO
Ioc : inversion du contrôle
Il s'avère que nous opérons tous étape par étape par nous-mêmes, et maintenant nous laissons le conteneur s'en charger ! Nous allons juste chercher ce dont nous avons besoin
Aop : aspect (essence, proxy dynamique)
Pour résoudre quoi ? Sans affecter la situation d'origine de l'entreprise, réalisez la fonction d'augmentation dynamique, un grand nombre d'applications dans le journal, la transaction... etc.
spring est un framework open source java léger, objectif de conteneur : pour résoudre la complexité du développement d'entreprise, le printemps est le printemps, je pense que c'est le printemps, et c'est aussi très compliqué, les fichiers de configuration !
SpringBoot
SpringBoot n'est pas une nouveauté, c'est une version améliorée de Spring !
La nouvelle génération de normes de développement JavaEE, prête à l'emploi ! 1> Prenez-le et utilisez-le !
Il configure automatiquement beaucoup de choses pour nous, nous pouvons l'utiliser hors de la boîte !
Caractéristiques : La convention est supérieure à la configuration !
Au fur et à mesure que le système de l'entreprise grandit, il y a de plus en plus d'utilisateurs !
Architecture des microservices - 1 > Nouvelle architecture
Modulaire. Fonctionnel!
Utilisateur, paiement, enregistrement, divertissement... ;
Il y a trop de monde : un serveur ne peut pas résoudre le problème ; ajouter des serveurs ! horizontal
Supposons que le serveur A occupe 98 % des ressources et que le serveur B n'en occupe que 10 %. -- l'équilibrage de charge
Est-ce que le projet global d'origine. Divisé en modules. Un utilisateur est un projet séparé. L'enregistrement est également un projet distinct, et la communication entre les projets est requise avant, comment communiquer
Il y a tellement d'utilisateurs, mais très peu de connexions ! Plus de serveurs pour les utilisateurs, moins de serveurs pour la connexion
Une question sur l'architecture des microservices ?
Quels sont les quatre problèmes principaux que les architectures distribuées rencontreront ?
1. Avec autant de services, comment les clients devraient-ils y accéder ?
2. Tant de services. Comment les services communiquent-ils entre eux ?
3. Autant de services. Comment le gouverner ?
4. Le service est en panne. ce qu'il faut faire?
solution:
Spring cloud est un ensemble d'écologie, qui consiste à résoudre les quatre problèmes de l'architecture distribuée ci-dessus. Si vous souhaitez utiliser Spring cloud, vous devez maîtriser SpringBoot,
Parce que Spring cloud est basé sur springBoot.
1. Spring cloud NetFlix a trouvé une solution ! Solution unique. Pouvons-nous tous aller ici et l'obtenir?
- Passerelle API, composant zuul
- Feindre 1> Httpclient --- La méthode de communication HTTP est synchrone et bloquée
- Service inscription et découverte Eureka
- Mécanisme de fusible, Hystrix
Fin 2018, Netflix a annoncé qu'Unlimited Friends arrêterait la maintenance. Si l'écologie n'est plus entretenue, elle sera déconnectée.
2. Apache Dubbo zookeeper, le deuxième système de solution.
API : non ! Soit trouver un composant tiers. ou implémentez-le vous-même
Dubbo est un framework de communication Rpc basé sur Java hautes performances ! 2.6.x
Service Inscription et Découverte, gardien de zoo : Zookeeper (Hadoop, Hive)
Non : avec l'aide d'Hystrix
Bête sans fin, l'actuel Doubbo 3.0 de Doubbo préconisera un support pertinent avec des fonctionnalités contemporaines (telles que la programmation réactive) et s'appuiera sur les forces de conception du HSF interne d'Ali pour réaliser l'intégration des deux
De nombreuses parties de la version préliminaire actuelle sont encore en discussion. J'espère que tout le monde pourra y réfléchir activement, et nous l'apprendrons et nous y référerons avec un esprit ouvert.
3. solution unique Alibaba springcloud!
maintenant. Une autre solution a été proposée :
Service Mesh : la norme de microservice de nouvelle génération, Server Mesh
Solution représentative : Istio. (Vous devrez peut-être le maîtriser à l'avenir !)
Tout change. Tout savoir!
1. Passerelle API, routage des services
2. HTTP, framework RpC, appel asynchrone
3. Enregistrement et découverte de service, haute disponibilité
4. Mécanisme de fusible, dégradation du service
Si, sur la base de ces quatre questions, vous développez une solution, également appelée Springcloud !
Pourquoi devrions-nous résoudre ce problème ? L'essence du second réseau n'est pas fiable ! Programmeurs, n'arrêtez pas d'apprendre !