本文转自:http://philcalcado.com/2017/08/03/pattern_service_mesh.html

SideCar: 
SideCar就是与Application一起运行的独立进程(Processor),为Application提供额外的功能;
例如:Kubernetes的Pod中运行一个Log收集器Container,这个Log收集器Container就被称为SideCar。


Service Mesh(服务网格):
在这样的模型里, 每个服务都会有一个SideCar代理与之匹配,服务间通信都是通过SideCar代理进行的,于是我们就会得到如下的部署图:

Buoyant 的 CEO William Morgan 发现,代理之间的连接形成了一种网格网络。2017 年初,William 对这样的平台做出了定义,并称之为 Service Mesh:

  服务网格是一个基础设施层,用于处理服务间通信。

  云原生应用有着复杂的服务拓扑,服务网格保证请

  求可以在这些拓扑中可靠地穿梭。在实际应用当中,

  服务网格通常是由一系列轻量级的网络代理组成的,

  它们与应用程序部署在一起,但应用程序不需要知道它们的存在。

这个定义最强有力的部分在于,它 不再把代理看成单独的组件,并强调了这些代理 所形成的网络的重要性:

组织开始将他们的微服务部署到更为复杂的运行时(如 Kubernetes 和 Mesos)上,并开始使用这些平台提供的网格网络工具。

他们正从使用一系列独立运行的代理转向使用集中式的控制面板:

从鸟瞰图中可以看到,服务的实际流量仍然在代理间流转,不过控制面板对每一个代理实例了如指掌,通过控制面板可以实现代理的访问控制和度量指标收集。

最近发布的 Istio就是这类系统最为突出的代表。

我们还无法对 Service Mesh 将给大规模系统带来怎样的影响做出全面的定论,不过我们至少可以看到两个方面的优势。

首先,微服务架构的一些公共组件已经是现成的,很多小公司可以享受到之前只有大公司才能享受的一些特性。

其次,我们或许能够因此使用最好的工具和编程语言,而无需担心不同平台对软件库和模式的支持存在差异。

												

Service Meth and SideCar的更多相关文章

  1. service mesh,linkerd,sidecar,apigateway

    对于大规模部署微服务(微服务数>1000).内部服务异构程度高(交互协议/开发语言类型>5)的场景,使用service mesh是合适的.但是,可能大部分开发者面临的微服务和内部架构异构复 ...

  2. Service Mesh vs SideCar

    Istio = 微服务框架 + 服务治理 Istio 大幅降低微服务架构下应用程序的开发难度,势必极大的推动微服务的普及.个人乐观估计,随着isito的成熟,微服务开发领域将迎来一次颠覆性的变革.后面 ...

  3. Qcon2017实录|Service Mesh:下一代微服务

    https://zhuanlan.zhihu.com/p/30292372 数人云11月Meetup报名开启,看中西方大神如何论道云原生与微服务!本文作者敖小剑老师将在本次Meetup上继续分享Ser ...

  4. 什么是 Service Mesh

    作者|敖小剑 微服务方兴未艾如火如荼之际,在 spring cloud 等经典框架之外,Service Mesh 技术正在悄然兴起.到底什么是 Service Mesh,它的出现能带来什么,又能改变什 ...

  5. 五分钟了解 Service Mesh

      1 背景   1.1 多语言   微服务理念是提倡不同业务使用最适合它的语言开发,现实情况也确实如此,尤其是AI的兴起,一般大型互联网公司存在 C/C++.Java.Golang.PHP.Pyth ...

  6. 什么是Service Mesh?

    转至大佬宋净明的博客:https://jimmysong.io/posts/what-is-a-service-mesh/ Service mesh 又译作 “服务网格”,作为服务间通信的基础设施层. ...

  7. Service Mesh(服务网格)

    Service Mesh(服务网格) 什么是Service Mesh(服务网格)Service mesh 又译作 "服务网格",作为服务间通信的基础设施层.Buoyant 公司的 ...

  8. Service Mesh 初体验

    前言 计算机软件技术发展到现在,软件架构的演进无不朝着让开发者能够更加轻松快捷地构建大型复杂应用的方向发展.容器技术最初是为了解决运行环境的不一致问题而产生的,随着不断地发展,围绕容器技术衍生出来越来 ...

  9. Service Mesh 是新瓶装旧酒吗?

    点击下载<不一样的 双11 技术:阿里巴巴经济体云原生实践> 本文节选自<不一样的 双11 技术:阿里巴巴经济体云原生实践>一书,点击上方图片即可下载! 作者 | 李云(花名: ...

随机推荐

  1. java前端传入的json字符串保存到表中的方法

    表 service_goods_base 字段如下: 传入的json 字符串: servicePictureArray  :  [{"picServiceUrl": "h ...

  2. js 的函数参数的默认值问题

    js函数参数设置默认值   php有个很方便的用法是在定义函数时可以直接给参数设默认值,如: function simue ($a=1,$b=2){ return $a+$b; } echo simu ...

  3. jetty;linux 目录结构

    [说明]今天看了看jetty这个web容器,上午看基础理论框架知识(后面半点没用到),下午下载了jetty,并且在上面部署了一个war应用,晚上在做eclipses整合jetty的时候出现了问题,下载 ...

  4. 【BZOJ1266】[AHOI2006]上学路线route Floyd+最小割

    [BZOJ1266][AHOI2006]上学路线route Description 可可和卡卡家住合肥市的东郊,每天上学他们都要转车多次才能到达市区西端的学校.直到有一天他们两人参加了学校的信息学奥林 ...

  5. 1020 逆序排列(DP)

    1020 逆序排列 基准时间限制:2 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序 ...

  6. Balala Power!(大数+思维)

    Balala Power! Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)T ...

  7. javascript中字符串截取的两种方法

    var testStr = "hello kay!"; 1.substr testStr.substr(1)   ->ello kay! testStr.substr(1,4 ...

  8. 新提交审核app保留检查更新入口将被拒绝

    3月起要求关闭所有App内的检查更新功能,苹果App Store将向用户自动提示更新,新提交审核版本如果保留检查更新入口审核时将被拒绝,请各产品团队重点关注. 10.6 - Apple and our ...

  9. python系列十一:python3数据结构

    #!/usr/bin/python #Python3 数据结构'''Python中列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能.''' '''将 ...

  10. MySql 安装常见问题汇总

    说明: 以下是针对 Mac 10.11 系统 以前,安装 MySql 数据库后, 设置的密码过于复杂,想更改为简单的密码, 方便数据库的使用. 1. 关闭和启动 MySql 数据库的方法: Syste ...