版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、,微服务架构专题VIP课程,微服务架构解析,优缺点、挑战与转变 MicroService全组件解析 Consul注册,心跳检测,服务发现 一解释就懂,一问你就懵,一讨论打架,Monolithic,单体应用时代:应用程序就是一个项目,在一个进程里面运行。 1 开发简单,集中管理,没有分布式的损耗 1 不好维护,升级困难,无法快捷迭代,稳定性也差 业务演进是技术发展的第一推动力!,垂直拆分,垂直拆分,独立部署和维护,分而治之! 拆分越多,存储越复杂,系统间重复的东西也越多。 垂直拆分后,还是单体模式-单体思维,分布式服务-MicroService,1 一系列服务组装成系统 2 独立部署,独立运行
2、3 独立开发和维护 4 分布式管理 5 强调隔离性 单体时,是调用方法 BLLDAL 分布式,是调用服务 微服务Micro Service 随着分布式技术的成熟,设计系统架构时就以服务分拆为手段,这种风格就是微服务架构,微服务架构,微服务架构(Microservice Architecture)是一种架构概念,旨在通过将功能分解到各个离散的服务中以实现对解决方案的解耦。 概念:把一个大型的单个应用程序和服务拆分为数个甚至数十个的支持微服务,它可扩展单个组件而不是整个的应用程序堆栈,从而满足服务等级协议。 定义:围绕业务领域组件来创建应用,这些应用可独立地进行开发、管理和迭代。在分散的组件中使用
3、云架构和平台式部署、管理和服务功能,使产品交付变得更加简单。 本质:用一些功能比较明确、业务比较精练的服务去解决更大、更实际的问题。,SOA面向服务架构,SOA(Service-OrientedArchitecture)是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和协议联系起来。 接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构件在各种各样的系统中的服务可以以一种统一和通用的方式进行交互。,SOA vs Micro Service,SOA是为重用,微服务架构是为了重写 SOA更水平,微服务是垂直的
4、SOA自上而下,微服务自下而上,践行微服务架构-服务通信1,Redis/DB/Queue/硬盘文件 1 被动式通信 2 门槛低,践行微服务架构-服务通信2,WebService/WCF/WebApi/甚至ashx,aspx 主动触发 数据序列化传递 跨平台 跨语言 http穿透防火墙,践行微服务架构-服务通信3,RPC-Remote Procedure Call .Net Remoting:.Net平台独有的,不支持跨平台 gRPC:高性能、开源和通用的 RPC 框架,面向服务端和移动端,基于 HTTP/2 设计。,践行微服务架构-Gateway,客户端该如何访问服务? 这么多服务地址 单个服
5、务下线/升级/更新 Authentication/ Authorization Gateway: 提供统一服务入口,让微服务对前台透明 聚合后台的服务,节省流量,提升性能 提供安全,过滤,流控等API管理功能,Nginx,单纯是负载均衡,Consul,负载均衡 服务注册与发现 健康检查,践行微服务架构-服务注册与发现,服务多实例,践行微服务架构-Polly,Polly是一种.NET弹性和瞬态故障处理库,允许我们以非常顺畅和线程安全的方式来执诸如行重试,断路,超时,故障恢复等策略。,践行微服务架构-鉴权&授权,基于token的安全验证体系,践行微服务架构-分布式事务-CAP,CAP理论,践行微服
6、务架构-Butterfly,分布式追踪和APM的Server端,它将包含Collector,Storage,独立的Web UI,并使用Open Tracing规范来设计追踪数据。,践行微服务架构-ExceptionLess,Exceptionless:开源的日志收集和分析框架,能为应用程序提供实时错误、特性和日志报告。,践行微服务架构-Docker,容器化快速部署,践行微服务架构-K8S,容器编排,Nginx,单纯是负载均衡,Consul,负载均衡 服务注册与发现 健康检查,环境配置,VS2019+.NetCore3.1 https:/www.consul.io/ 截止2019.12.16 最
7、新版本为consul_1.6.2,项目架构,1个上端应用服务,调用者 3个微服务实例,被调用者 Consul服务注册与发现,健康检查 从直接调用到通过Consul调用,架设步骤常规流程,1 客户端初始化 2 服务实例建立运行 dotnet Zhaoxi.MicroService.ServiceInstance.dll -urls=http:/*:5726 -ip= -port=5726 dotnet Zhaoxi.MicroService.ServiceInstance.dll -urls=http:/*:5727 -ip= -port=5727 dotne
8、t Zhaoxi.MicroService.ServiceInstance.dll -urls=http:/*:5728 -ip= -port=5728 3 普通服务调用,架设步骤-Consul调用,多实例并行 基于脚本运行多个实例 Consul注册发现 2 健康检查,自动下线 就是一个心跳 3 通过Consul转换调用,架设步骤-负载均衡策略扩展,负载均衡策略实现: 均衡策略 轮询策略 权重策略 and so on,践行微服务架构-网关Gateway,客户端是要直接访问实例,服务实例还得暴露出去-所以,需要一个网关,可以保护 限流熔断鉴权,搭建网关Gateway,独立进程完成网关转发 1 webapi程序 2 nuget-ocelot 3 startup配置中间件 4 增加配置文件+指定地址 dotnet Zhaoxi.MicroService.GatewayDemo.dll -urls=http:/*:6299 -ip= -port=6299,Gateway功能,路由-核心功能 集群负载均衡 实现了客户端和服务实例的隔绝保护节约IP提高效率 Consul完成了集群管理,发现健康检查下线,Gateway+Consul,整合网
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 红斑狼疮管理|活动度评估 + 用药调整课件
- 2026年二级岩土地基承载力计算专项题库(含答案及解析)
- 2026年南昌市青云谱区事业编单位人员招聘笔试备考试题及答案详解
- 2026年吴忠市利通区中小学编制教师招聘考试模拟试题及答案详解
- 2026年黄山市徽州区中小学编制教师招聘考试参考试题及答案详解
- 2026年汕头市澄海区中小学编制教师招聘考试参考试题及答案详解
- 2026年湖北省黄石市中小学编制教师招聘考试参考题库及答案详解
- 2026年莱芜市钢城区中小学编制教师招聘笔试模拟试题及答案详解
- 2026年自贡市沿滩区中小学编制教师招聘考试模拟试题及答案详解
- 2026年河北省唐山市中小学编制教师招聘笔试参考试题及答案详解
- 风电场道路分包合同
- 2026湖北交投襄阳高速公路运营管理有限公司一线工作人员招聘考试参考题库及答案详解
- DB11-T 1610-2026 民用建筑信息模型深化设计建模细度标准
- 《中华人民共和国生态环境法典》深度培训
- 防喷器的试压操作培训课件
- MAG焊具体工艺参数
- 湖北小学生诗词大赛备考试题库400题(三四年级适用)
- 普通诊所污水、污物、粪便处理方案 及周边环境情况说明
- 自动词和他动词课件高考日语一轮复习
- 动物检验检疫学课件
- 反比例函数 单元作业设计
评论
0/150
提交评论