程序员必知必会的ServiceMesh技术,不会在未来就等着被淘汰吧
Service Mesh技术
服务啮合(Service Mesh)是一种为了保证“从服务到服务”的安全、快速和可靠的通信而产生的基础架构层。
在云原生架构下,服务啮合层的提出,可以帮助开发者将服务的交互通信问题与微服务内部的业务问题隔离开来,使之专注于各自的领域。
微服务的SideCar模式
SideCar的本意是边车,它在客户端和服务端之间增加了一个服务代理,而这个代理是以应用组件的模式与微服务应用一起打包部署在容器或者单独进程中的。
边车模式类似连接到摩托车的边车,起到辅助和支持的作用。这种模式通过增加了边车(SideCar),实现边车组件完成一些非功能公共服务需求(如服务发现、熔断)。它的最大好处就是可以集成异构系统。
SideCar模式并没有在微服务架构中大面积应用,因为这种模式仅仅作为一种过渡,或者说解决了部分异构系统的服务发现、服务负载等局部问题,但它的局限性在于本质上它还是为特定的基础设施而设计的,无法满足兼容性。
Service Mesh的技术前景
Service Mesh解决了SideCar模式的根本问题和局限性。
● Service Mesh是一种网络模型和基础设置,类似TCP/IP通信协议,服务之间通信使用Service Mesh,不再像SideCar被视为一个单独的组件,而是强调网络。
● Service Mesh作为通用协议的控制组件,不仅关注数据面的消息转发,还增加了控制面,实现对流量的控制和管理。
Service Mesh的概念Service Mesh可以总结为一个专门处理服务通信的基础设施层。
它的职责是在由云原生应用组成服务的复杂拓扑结构下进行可靠的请求传送。一个典型的Service Mesh架构由服务代理(数据平面)和管理与配置这些代理的“控制平面”组成。Service Mesh的控制平面如下图所示。
Service Mesh的优势
相比传统的微服务框架,Service Mesh有以下优势。
● 服务网格将SDK的服务治理能力从业务中剥离出来,拆分为独立进程,通过拦截标准协议和对网络通信层的控制实现服务治理,实现服务治理与业务的分离和解耦。
● 传统的微服务架构存在技术栈、遗留系统改造等约束条件限制,而Service Mesh可以统一管理这些服务,减少了维护和改造的成本。
● 服务网格技术是一个专用的基础设施层,它可以更有效地处理服务的治理需求,如路由的灰度发布、安全认证、加密等特性。
Service Mesh的局限
Service Mesh不是“银弹”,它的局限与优势一样明显。ServiceMesh本身也带来了更多的复杂性。
● 服务网格技术会极大地增加开发和运维的复杂性。
● 服务网格技术相对不易做定制化开发和扩展,缺少了开发的灵活性。
● 服务网格技术缺少业务特性支持,如分布式事务等特性还没有相应的解决方案。
● 服务网格技术会给业务带来一定的延迟开销,对于性能有极致要求的场景,这样的延迟在大流量场景下,还会带来用户体验的下降。
● 服务网格技术的运行能力将成为整个网络和所有应用的瓶颈。
本文给大家讲解的内容是微服务发展趋势,Service Mesh技术
- 下篇文章给大家讲解的内容是微服务发展趋势,Serverless技术
- 觉得文章不错的朋友可以转发此文关注小编;
- 感谢大家的支持!
本文就是愿天堂没有BUG给大家分享的内容,大家有收获的话可以分享下,想学习更多的话可以到微信公众号里找我,我等你哦。
相关文章
- 从程序员成为技术领导者:掌握全面解决问题的方法(温伯格)
- 为什么工作三年的程序员还不懂APM与调用链技术?
- 程序员必知必会的分布式链路追踪技术:SpringCloudSleuth+Zipkin
- 程序员应该专注技术还是转管理?
- 【Techo Day腾讯技术开放日】云原生时代,程序员应该掌握哪些能力?
- 程序员真的很难碰到一个好的技术领导
- 免杀技术-使用纤程免杀
- 从程序员到百万高管的路有多远?《技术人修炼之道》电子书限时仅需9.9元!
- 工作中如何做好技术积累详解程序员
- 程序员看完都沸腾了“600页阿里技术全景图曝光”详解程序员
- 解读阿里背后强大的数据库技术详解程序员
- Oracle 异地数据库恢复技术剖析(oracle异地恢复)
- 程序员如何选择技术方向或编程语言?
- 业界首创全新影像技术 华为P50 Pro官方样张公布
- 学习Linux,让技术焕发生机(如何学linux)
- Linux程序员的指南——掌握技术的秘诀(linux程序员手册)
- 《技术人求职指南》(三) 掌握方法论
- 大突破!基因编辑技术能帮助失明动物恢复视力
- 探讨 Linux 应用程序如何使用串口通信技术,串口通信在物联网设备通讯中发挥重要作用(linux应用串口)
- 学习PHP程序员必会的Linux技术(php程序员linux)
- 解密Linux程序员面试:聚焦技术实战,抢占内推先机!(linux程序员面试)
- Linux 堆栈空间优化技术研究(linux堆栈空间)
- 如何实现Oracle数据库的克隆?——Oracle Clone技术简介(oracleclone)
- 妙手锁定MSSQL账号,惊艳技术疯狂轮转(mssql锁定账号)
- 基于 Redis 的远程批量删除技术(redis远程批量删除)
- 推出百元级扫地机视觉传感器,速感想让技术先落地再延伸
- 测试你对技术的掌握度:JSP程序员成长之路