当前位置:网站首页>Alibaba cloud microservices (IV) service mesh overview and instance istio
Alibaba cloud microservices (IV) service mesh overview and instance istio
2022-07-06 13:09:00 【Geometer】
To mention Service Mesh I have to mention microservices , According to Wikipedia
Microservices (Microservices) Is a software architecture style , It is a small functional block focusing on a single responsibility and function (Small Building
Blocks) Based on , Using modularity to compose complex large applications , The use of each functional block has nothing to do with language
(Language-Independent/Language agnostic) Of API Sets communicate with each other
With Google three carriages BIGTABLE,Mapreduce,GFS Appearance , Knock on the door of distributed , Fusing strategy 、 Load balancing 、 The emergence of service discovery , Services have some communication semantics according to business needs , In order to avoid each service developing its own set of communication semantics , There is a micro service framework , for instance Spring Cloud Other framework , They realize the semantic functions required by the distributed system , Like service discovery , Load balancing, etc. , To some extent, the communication details are shielded , So that developers can realize the whole function with less code without considering some problems of communication .
But later , People also found that the microservice framework is not omnipotent , It mainly has the following problems :
1. Developers need to spend a lot of time learning some details of the microservice framework , Because if something goes wrong , It is difficult to troubleshoot and solve problems without understanding the framework
2. Frameworks that use microservices need to use specific languages , This is different from the original features of microservices ---- It has nothing to do with language
To solve this problem , first generation Service Mesh emerge as the times require
It abstracts the communication of distributed system into a separate layer , It is up to him to realize load balancing 、 Service discovery 、 Certificate authority 、 Surveillance tracking 、 Flow control and other functions required by distributed systems , As a proxy service equivalent to a service , Deployed with services , It completes the request between services through the communication between agents .
Pictured , The blue part is the service grid , If you only look at the blue part , It's easy to understand why it's called “Mesh” Is that right ~
later , For unified management , People have derived the second generation Service Mesh, Developed a centralized control panel , All stand-alone components update the network topology strategy and report the data through the control panel , A very classic example is Istio
Istio It consists of two parts : Control plane and data plane .
The data plane is the communication plane between businesses . If there is no service grid , The network cannot understand the traffic being sent , Nor can it be based on what type of traffic it is , Or who it comes from , To whom to make any decision .
The service grid uses agents to intercept all network traffic , Allows you to provide a wide range of application aware functions according to the configuration you set .
The agent is deployed with each service you start in the cluster , Or run with a service running on a virtual machine .
The control plane gets the configuration and service views you need , And dynamically program the proxy server , Update them as rules or environments change .
Use Istio Before
Use Istio after :
Service Mesh Advantages and disadvantages :
advantage :
1. Shielding distributed communication complexity
2. Shielding language
3. Transparent to application layer , Don't need to care about
shortcoming :
1. The communication performance is reduced to a certain extent
2. The overall stability of the service depends on Service Mesh
边栏推荐
- [dry goods] cycle slip detection of suggestions to improve the fixed rate of RTK ambiguity
- 记录:初次cmd启动MySQL拒接访问之解决
- isEmpty 和 isBlank 的用法区别
- [GNSS data processing] Helmert variance component estimation analysis and code implementation
- Inheritance and polymorphism (Part 2)
- 平衡二叉树详解 通俗易懂
- 【无标题】
- Pride-pppar source code analysis
- 图书管理系统小练习
- How to ensure data consistency between MySQL and redis?
猜你喜欢
[算法] 剑指offer2 golang 面试题4:只出现一次的数字
Fgui project packaging and Publishing & importing unity & the way to display the UI
TYUT太原理工大学2022数据库之关系代数小题
[算法] 剑指offer2 golang 面试题6:排序数组中的两个数字之和
One article to get UDP and TCP high-frequency interview questions!
2022国赛Re1 baby_tree
架构师怎样绘制系统架构蓝图?
Fundamentals of UD decomposition of KF UD decomposition [1]
基本Dos命令
[algorithm] sword finger offer2 golang interview question 12: the sum of the left and right sub arrays is equal
随机推荐
Interview Essentials: talk about the various implementations of distributed locks!
First acquaintance with C language (Part 1)
Alibaba cloud side: underlying details in concurrent scenarios - pseudo sharing
记录:下一不小心写了个递归
[算法] 剑指offer2 golang 面试题7:数组中和为0的3个数字
3月15号 Go 1.18 正式版发布 了解最新特色以及使用方法
阿里云微服务(四) Service Mesh综述以及实例Istio
Pride-pppar source code analysis
【GNSS数据处理】赫尔默特(helmert)方差分量估计解析及代码实现
165. Compare version number - string
How to reduce the shutdown time of InnoDB database?
TYUT太原理工大学2022数据库考试题型大纲
Iterable、Collection、List 的常见方法签名以及含义
Chromatic judgement bipartite graph
MySQL backup -- common errors in xtrabackup backup
初识指针笔记
[algorithm] sword finger offer2 golang interview question 13: sum of numbers of two-dimensional submatrix
Inheritance and polymorphism (Part 2)
错误:排序与角标越界
服务未正常关闭导致端口被占用