下一代微服务Service Mesh原理及实践(下)

本文涉及的产品
注册配置 MSE Nacos/ZooKeeper,118元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
简介: 下一代微服务Service Mesh原理及实践(下)

完整流程图


这个完整的流程图涵盖了
DNS、CDN、Nginx、FastDFS(或Ceph)、
LVS、ServiceMash、数据收集中心、
注册中心、控制中心、网关、业务逻辑层、
数据访问层、存储层等数据交互过程
价值不菲 想要的话 
可以添加我微信15900411193


调用链路


image.png


1、做协议解析的目的是兼容老的协议
客户端发出请求后 在客户端service和服务方service要做协议解析
如果都是mesh协议 是不需要协议解析的、协议封装也不需要
2、客户端一定要做序列化、反序列化 这和通讯没啥关系 就是一个数据包


调用方时序图


image.png


服务方时序图


微信图片_20220430204820.png


缓存管理 多个Map:
服务方提供哪些函数调用 通过扫描jar包 反射机制 获取服务提供的类名和方法名


协议设计


数据协议

1、Protocol Buffer
2、分割符、版本号、Mesh消息构成


image.png


1、一次传输协议中有版本号 
比如 版本号1表示rpc协议 
版本号2表示mesh协议
通过版本号可以区分兼容老协议还是新协议
2、多个数据包之间通过头和尾分割符分开
3、分割符占5个字节


Mesh通讯协议

1、TCP长连接
2、Http1.1或2.0


混合云部署


1、调用方
a、SideCar+Service(Mesh)
b、Service(RPC)
2、服务方
a、SideCar+Service(Mesh)
b、Service(RPC)

访问流程

image.png


1、在服务启动的时候 mesh服务或普通的RPC服务都会去注册中心注册 此时就知道了该节点的服务类型
2、调用方下拉服务信息 也就知道了提供方服务类型 然后选择不同的协议去调用


小细节


1、熔断放在mesh里面做 不需要业务方参与
2、下游重试次数是一样的 是服务粒度 非接口粒度
3、proxy(mesh)之间做健康检测 是分布式的 一旦发现自己的上游或下游出现了问题 就更新本地的路由表
4、负载均衡算法:Random、RR、Hash(主要用一致性hash来做)
(RR:(循环负载)
第一次请求路由到第一个节点,
第二次请求路由到第二个节点,
第三次请求路由到第三个节点,
第四次请求路由到第一个节点
....)


架构未来


2平台1中心1趋势
service mesh平台与业务解耦
容器云弹性平台
服务治理平台(控制中心、注册中心、数据收集中心)
人工智能(AI)



服务管理平台的调用关系-数据收集存储方法


服务方-调用方角度

image.png


服务方:1分钟500万条记录
调用方:50万
共550万


存储方案

方案1

image.png

image.png



相关文章
|
29天前
|
运维 监控 Java
后端开发中的微服务架构实践与挑战####
在数字化转型加速的今天,微服务架构凭借其高度的灵活性、可扩展性和可维护性,成为众多企业后端系统构建的首选方案。本文深入探讨了微服务架构的核心概念、实施步骤、关键技术考量以及面临的主要挑战,旨在为开发者提供一份实用的实践指南。通过案例分析,揭示微服务在实际项目中的应用效果,并针对常见问题提出解决策略,帮助读者更好地理解和应对微服务架构带来的复杂性与机遇。 ####
|
29天前
|
算法 NoSQL Java
微服务架构下的接口限流策略与实践#### 一、
本文旨在探讨微服务架构下,面对高并发请求时如何有效实施接口限流策略,以保障系统稳定性和服务质量。不同于传统的摘要概述,本文将从实际应用场景出发,深入剖析几种主流的限流算法(如令牌桶、漏桶及固定窗口计数器等),通过对比分析它们的优缺点,并结合具体案例,展示如何在Spring Cloud Gateway中集成自定义限流方案,实现动态限流规则调整,为读者提供一套可落地的实践指南。 #### 二、
55 3
|
28天前
|
消息中间件 运维 安全
后端开发中的微服务架构实践与挑战####
在数字化转型的浪潮中,微服务架构凭借其高度的灵活性和可扩展性,成为众多企业重构后端系统的首选方案。本文将深入探讨微服务的核心概念、设计原则、关键技术选型及在实际项目实施过程中面临的挑战与解决方案,旨在为开发者提供一套实用的微服务架构落地指南。我们将从理论框架出发,逐步深入至技术细节,最终通过案例分析,揭示如何在复杂业务场景下有效应用微服务,提升系统的整体性能与稳定性。 ####
39 1
|
29天前
|
监控 安全 持续交付
构建高效微服务架构:策略与实践####
在数字化转型的浪潮中,微服务架构凭借其高度解耦、灵活扩展和易于维护的特点,成为现代企业应用开发的首选。本文深入探讨了构建高效微服务架构的关键策略与实战经验,从服务拆分的艺术到通信机制的选择,再到容器化部署与持续集成/持续部署(CI/CD)的实践,旨在为开发者提供一套全面的微服务设计与实现指南。通过具体案例分析,揭示如何避免常见陷阱,优化系统性能,确保系统的高可用性与可扩展性,助力企业在复杂多变的市场环境中保持竞争力。 ####
42 2
|
29天前
|
消息中间件 运维 API
后端开发中的微服务架构实践####
本文深入探讨了微服务架构在后端开发中的应用,从其定义、优势到实际案例分析,全面解析了如何有效实施微服务以提升系统的可维护性、扩展性和灵活性。不同于传统摘要的概述性质,本摘要旨在激发读者对微服务架构深度探索的兴趣,通过提出问题而非直接给出答案的方式,引导读者深入
45 1
|
30天前
|
负载均衡 监控 API
后端开发中的微服务架构实践与挑战
本文深入探讨了微服务架构在后端开发中的应用,分析了其优势和面临的挑战,并通过案例分析提出了相应的解决策略。微服务架构以其高度的可扩展性和灵活性,成为现代软件开发的重要趋势。然而,它同时也带来了服务间通信、数据一致性等问题。通过实际案例的剖析,本文旨在为开发者提供有效的微服务实施指导,以优化系统性能和用户体验。
|
27天前
|
Cloud Native API 持续交付
云原生架构下的微服务治理策略与实践####
本文旨在探讨云原生环境下微服务架构的治理策略,通过分析当前面临的挑战,提出一系列实用的解决方案。我们将深入讨论如何利用容器化、服务网格(Service Mesh)等先进技术手段,提升微服务系统的可管理性、可扩展性和容错能力。此外,还将分享一些来自一线项目的经验教训,帮助读者更好地理解和应用这些理论到实际工作中去。 ####
39 0
|
2月前
|
设计模式 Java API
微服务架构演变与架构设计深度解析
【11月更文挑战第14天】在当今的IT行业中,微服务架构已经成为构建大型、复杂系统的重要范式。本文将从微服务架构的背景、业务场景、功能点、底层原理、实战、设计模式等多个方面进行深度解析,并结合京东电商的案例,探讨微服务架构在实际应用中的实施与效果。
144 6
|
2月前
|
设计模式 Java API
微服务架构演变与架构设计深度解析
【11月更文挑战第14天】在当今的IT行业中,微服务架构已经成为构建大型、复杂系统的重要范式。本文将从微服务架构的背景、业务场景、功能点、底层原理、实战、设计模式等多个方面进行深度解析,并结合京东电商的案例,探讨微服务架构在实际应用中的实施与效果。
54 1
|
27天前
|
Java 开发者 微服务
从单体到微服务:如何借助 Spring Cloud 实现架构转型
**Spring Cloud** 是一套基于 Spring 框架的**微服务架构解决方案**,它提供了一系列的工具和组件,帮助开发者快速构建分布式系统,尤其是微服务架构。
154 69
从单体到微服务:如何借助 Spring Cloud 实现架构转型