当前位置:网站首页>Développeur, quelle est l'architecture des microservices?
Développeur, quelle est l'architecture des microservices?
2022-06-26 10:25:00 【Le Prince.】
🧑Auteur:Étudiants en informatique de deuxième année
Page d'accueil:Concentrez - vous sur l'apprentissage de nouvelles technologies
La clé:MicroservicesDéveloppement de logicielsArchitectureConcept
Bonjour tout le monde,Ce que nous partageons aujourd'hui, c'est l'architecture de l'entreprise,Architecture des microservices,Lire cet article,Je suis sûr que vous serez beaucoup plus clair sur le concept de microservice,Je suis Chow,Si vous pensez que l'article est bien écrit,Rappelez - vous que les triplets soutiennent les pauvres blogueurs

Catalogue des articles
Architecture monomère

Parlez directement de l'architecture des microservices,C'est trop dur.,Il y a une raison à la naissance de toute nouvelle technologie,Avant de parler de l'architecture des microservices, Je pense que nous devrions commencer par le concept d'architecture monomère et ses avantages et inconvénients .
En parlant d'architecture monomère , Le plus souvent, c'est MVCArchitecture, L'avantage est que les coûts d'apprentissage sont faibles ,Allez!,Tests、Déploiement、 L'exploitation et l'entretien sont également pratiques , Même une personne peut développer et déployer un petit site Web .
ParMVCExemple d'architecture, Les opérations se font généralement par le déploiement d'un (Le cercle)WARSac.TomcatServeur,DémarrageTomcat Écouter un port pour un service externe , Petite entreprise au début 、 Quand l'équipe était petite , L'architecture monomère est un bon choix .
Mais avec l'expansion de l'entreprise , Le nombre croissant de membres de l'équipe , L'architecture monomère commence à poser des problèmes . Par exemple, le coût du travail d'équipe augmente , Quand les affaires tournent mal , Presque tous les développeurs concernés sont impliqués dans la résolution ,Inefficacité,Coût élevé, La disponibilité du système s'est détériorée , Parce que toutes les entreprises sont emballées et déployées , En cas de problème avec le Code ou les ressources impliqués dans une fonction ,Ça affectera toutWAR Fonctions déployées dans le paquet , C'est très grave . Déploiement inefficace , De plus en plus de codes d'application uniques , La dépendance augmente également , J'ai assez de temps pour appliquer les tests de déploiement. .Croissance des entreprises, Le Service commence plus longtemps , La vitesse de mise en ligne fait mal à la tête ……
Donc,, Une nouvelle architecture est nécessaire pour découpler les différents modules de l'application , Réduire les coûts d'entretien du déploiement du développement , L'idée du service est née ,Microservices, Peut grandement améliorer l'efficacité de la livraison des applications !
Service
En termes simples, Le service consiste à utiliser les applications monomères traditionnelles JAR Appel de méthode local généré par la dépendance du paquet ,Pour passer à traversHTTPDeREST APIAppel d'interface distante.
Ça se voit., Par le service , Peut améliorer l'expansion de l'application monomère , Couplage élevé du système , Problèmes tels que l'inefficacité de la collaboration .
Architecture des microservices

Grâce à Docker Pour représenter la maturité de la technologie de conteneurisation et DevOps La montée de la culture, L'idée de service a évolué pour devenir l'architecture de microservice que nous connaissons aujourd'hui. .
DevOps C'est une valeur“Développeurs de logiciels(Dev)”Et“ITOutil universel de prise de paquets(Ops)”Une culture de communication et de coopération、Sports ou conventions,Grâce à l'automatisation“Livraison de logiciels”Et“Changement d'architecture”Processus,Pour construire、Tests、Le logiciel de publication peut être plus rapide、Fréquent et fiable.
Quelles sont donc les caractéristiques des microservices ?
- La granularité du fractionnement des services est plus fine, Le micro - service peut être considéré comme une dimension plus fine du Service , Aussi petit qu'un sous - module ,Chaque service se concentre généralement sur une entreprise particulière、Petite quantité de code requise,Faible complexité、Facile à entretenir
- Entretien indépendant du service, Chaque micro - service peut être développé par une petite équipe ou même une personne 、Tests、 Publier et o & M , Et responsable de tout le cycle de vie
- Taille de l'équipe, Chaque service est développé séparément dans le cadre des microservices ,Déploiement et entretien.Chaque service est conçu à partir de, Petite équipe de développement à maintenance , Gestion d'équipe facile ,Faible coût
- Mode de stockage des données,Différents microservices peuvent utiliser différentes méthodes de stockage des données, Par exemple, certaines utilisations mysql,Oui.redis……
- Modèle de développement,En microservice, Différents modules peuvent être développés dans différentes technologies ou langues ,Un modèle de développement plus flexible
- Les applications qui adoptent une architecture monomère n'ont besoin que de modifications,Vous devrez redéployer toute l'application pour qu'elle prenne effet.,Et les microservices résolvent parfaitement ce problème.Dans l'architecture des micro - services,Après modification d'un microservice,Il suffit de redéployer ce service,Sans avoir à redéployer l'application entière
- Les microservices peuvent être reliés à des conteneurs(Docker)En association avec,Mise en œuvre d'itérations rapides、Construction rapide、Déploiement rapide
- Les microservices ont une bonne extensibilité,Au fur et à mesure que l'entreprise grandit, Le volume et la quantité de Code des microservices augmentent considérablement ,À ce stade, nous pouvons diviser à nouveau le micro - service en fonction de l'entreprise;En plus de ça,,Lorsque le nombre d'utilisateurs et la concurrence augmentent,Nous pouvons également regrouper les déploiements de microservices,Cela augmente la capacité de charge du système
On peut voir que, Lancement et déploiement de microservices pour les services , Et l'entretien du Service apporte beaucoup d'avantages .
Cadre des microservices
L'architecture des microservices est un style et une idée d'architecture de système, En réalité, je veux construire un système de micro - services ,Nécessite le soutien du cadre de microservice.Avec la popularité des micro - services, De nombreux langages de programmation ont introduit leurs propres cadres de microservice ,Par exemple,:
Java Cadre des microservices
Spring Cloud:Basé sur REST Services pour construire des services,Aider les architectes à construire une chaîne écologique complète de technologies de microservicesSpark:Le meilleur Java Un des cadres de microservice,Le cadre soutient l'adoption Java 8 Et Kotlin Créer une application pour l'architecture des microservicesDubbo: Cadre de services distribués open source d'Alibaba
……
Go Cadre de microservices linguistiques
Go Il y a moins de cadres de micro - services dans la langue,Plus utilisé GoMicro,C'est un RPC Cadre,Équilibrage de la charge、Découverte de services、Communication synchrone、Fonctions telles que la communication asynchrone et le codage des messages
Phyton Cadre des microservices
Phyton Les cadres de micro - services de Flask、Falcon、Bottle、Nameko Et CherryPy Attendez.
Et beaucoup de langues , Chacun a son propre cadre de micro - services ,Je ne vais pas les énumérer ici., Ce que les blogueurs connaissent Spring Cloud
Résumé
Le Service passe d'une application d'architecture unique à un déploiement de développement fractionné axé sur le Service , Plus tard, avec l'expansion de l'échelle de l'Internet mobile ,Développement agile、Exécution continue、DevOps Développement et pratique de la culture ,Et basé surDocker La maturation constante de la technologie de Containerisation , Affiner le service ,L'architecture des microservices est devenue populaire,Devenir progressivement la direction de l'évolution future de l'architecture d'application.
Résumé simple, L'architecture des microservices consiste à séparer les applications monomères complexes et volumineuses en services à grain fin. , Chaque service divisé est confié à une petite équipe pour le développement, l'exploitation et l'entretien. , Une fois le déploiement terminé, Emballez - le séparément , Cela améliore considérablement l'efficacité de la livraison des applications et la difficulté de maintenir les Itérations , Par conséquent, il est progressivement adopté par les grandes entreprises Internet. .
À la fin
Lisez - le ici., Vous devez avoir une connaissance de base des micro - services ,Capacité limitée de l'auteur, S'il y a une erreur dans l'écriture , Veuillez également indiquer la correction ,Enfin, J'espère que vous pourrez jeter les bases ,Terre à terre,Allez, mon garçon., N'oubliez pas que les triplets soutiennent les pauvres blogueurs ,Je suis Chow,J'attends votre attention.

边栏推荐
- String类intern()方法和字符串常量池
- Blog post index summary --c #
- 2. merge two ordered arrays
- How to find and install the dependent libraries of Debian system
- exec系列函数(execl、execlp、execle、execv、execvp)使用
- Threadmode interpretation of eventbus
- 【無標題】
- Global and Chinese market of contemporary lampshade 2022-2028: Research Report on technology, participants, trends, market size and share
- Dynamic library connection - symbol conflict - global symbol intervention
- How to change the QR code material color of wechat applet
猜你喜欢

【Leetcode】76. Minimum covering substring

jar版本冲突问题解决

MySQL第十二次作业-存储过程的应用

Reshape a two-dimensional array with 3 rows and 3 columns to find the sum of the diagonals

The IE mode tab of Microsoft edge browser is stuck, which has been fixed by rolling back the update

全渠道、多场景、跨平台,App如何借助数据分析渠道流量

MySQL learning summary

國際化配置

Cloud native essay using Hana expression database service on Google kubernetes cluster

Record the handling of oom problems caused by too many threads at one time
随机推荐
Openxcap usage
Detailed explanation of winsorflow quantum installation process
二叉树常见面试题
Hcia-dhcp experiment
jar版本冲突问题解决
Using foreach to loop two-dimensional array
MySQL第九次作业-连接查询&子查询
什么是僵尸网络
Solution to network request crash in retrofit2.8.1
Luogu 1146 coin flip
六月集训(第26天) —— 并查集
Selection of webrtc video codec type VP8 H264 or other? (openh264 encoding, ffmpeg decoding)
US President signs community safety act to deal with gun issue
Develop current learning objectives and methods
MySQL project 7 Summary
Recyclerview implements flow layout (LinearLayout with line wrap) (flexboxlayoutmanager)
【深度优先搜索】312.戳气球
Dialog centered
首批12家企业入驻!广州首个集中展销老字号产品专柜开张
Little red book - Summary of internal sales spike project