Service Mesh 微服务架构设计漫谈服务架构的演进史 2 微服务架构设计的现状 3 Service Mesh微服务设计 4 Service Mesh的框架介绍我过往的经历情况 类型:传统互联网 模式:CS/BS模式 类型:互联网 模式:单体模式 类型:游戏 模式:单体模式 类型:互联网金融 模式:微服务模式Java版本演进史 JDK J2ME J2SE J2EE Java SE 2004年 Java SE 5.0 格负责在这些拓扑中 实现请求的可靠传递。在实践中,服务网格通常实现为一组 轻量级网 络代理,它们与应用程序一起部署,但 对应用程序透明。Service Mesh的实现原理 Spring Cloud的类库模式 Service Mesh的Sidecar模式Service Mesh:Istio架构Service Mesh:Linkerd架构Service Mesh: OCTO-Mesh架构为了解决单体的复杂度问题,我们引入微服务架构0 码力 | 36 页 | 26.53 MB | 6 月前3
大规模微服务架构下的Service Mesh探索之路华为:CES Mesher • 使用Golang编写 • 由go chassis演进而来 • 走的是已有类库->加proxy->再加 控制平面的路线 • 部分对接Istio • 细节暂时不清楚,即将开源 新浪微博:Motan Mesh • 也是使用Golang编写 • 全新实现(原有类库是基于Java) 老成持重的稳健思路:以proxy为切入口,第 一时间获取跨语言和技术栈下沉的红利,立足 Localhost不影响 两倍吞吐量 ü 决策: • 暂时不确认是否会造成 直接影响,先不动 • 等待实际验证后再决定 是否合并report部分 ü 参考 • Conduit已经在新版本 中将report类的功能合 并到Sidecar • 国内的华为/新浪微博 等都选择在Sidecar中 实现功能,没有mixerü 支持跨集群 • 打通多个服务注册中心 • 支持多个注册中心同步信息 • 实现跨注册中心的服务调用 • 内部使用同样产品落地 ü 开源的动机 • 吸引社区,谋求合作,开源共建 ü 开源项目的维护 • 内部使用,保证持续投入 • 请放心Sofa Mesh的合作模式:多层次全方位开放 基础类库 功能模块 完整产品 解决方案 服务注册 熔断 RPC 路由规则 负载均衡 限流 加密 认证 Golang Sidecar 增强版本 Pilot Edge Sidecar 服务治理0 码力 | 37 页 | 7.99 MB | 6 月前3
Service Mesh结合容器云平台的思考和实践置ProxyConfig对象。下面分析几个相对重 要的配置。 role pilot-agent的role类型为model包下的Proxy,决定了pilot-agent的“角色”,role包括以下属性: 1.Type pilot-agent有三种运行模式。根据role.Type变量定义,类型为model.Proxy,定义在context.go文件中,允许的3个取值范围为: i. "sidecar" 命令的对应flag来提供用户自定义值。如果用户不提供,则会在proxy命令执行时,根据istio连接 的服务注册中心(service registry)类型的不同,会采用不同的配置方式。agent当前使用的具体service registry类型保存在 pilot-agent的registry变量里,在init函数中初始化为默认值Kubernetes。当前只处理以下三种情况: • Kubernetes 其中的private ip通过WaitForPrivateNetwork函数获得。 istio需要从服务注册中心(service registry)获取微服务注册的情况。当前版本中istio可以对接的服务注册中心类型包括: 1."Mock" MockRegistry is a service registry that contains 2 hard-coded test services. 2. "Config"0 码力 | 28 页 | 3.09 MB | 6 月前3
陌陌Service Mesh架构实践试验阶段 评估阶段 启动阶段 思考 行动12/24 实践 /03 Service Mesh架构在陌陌的落地实践13/24 方案选型 与现有架构的兼容性 现阶段的关键需求 技术储备与原则类因素 自研数据平面与 控制平面方案 使存量服务接入Mesh 方案 对接大量内部系统 关键收益均由数据平面产生 非完善的控制平面功能 技术体系内不引入Go语言 最成熟的服务端语言为Java 预留占位Container • Container内部升级 当前方案 运维Agent • 单个Pod升级Agent • 多个Pod发布编排 Agent发布流程19/24 数据平面容灾方式 服务类应用 • 场景:出流量由入流量产生 • 方案:由原有健康检测机制摘除流量 借助原有服务治理能力 特殊应用 • 场景:流式计算、定时任务 • 方案:出流量降级至本应用的其他Agent 出流量容灾20/240 码力 | 25 页 | 1.25 MB | 6 月前3
Service Mesh 发展趋势(续) 蚂蚁金服 | 骑士到中盘路向何方?Assembly介绍 Part 2:ServiceMesh灵魂拷问二:性能有了,架构怎么办? Mozilla官方定义: WebAssembly是一种新的编码方式,可以在现代的网络浏览器中运行 - 它是一种低级的类汇编语言,具有 紧凑的二进制格式,可以接近原生的性能运行,并为诸如C / C ++等语言提供一个编译目标,以便它们可以 在Web上运行。它也被设计为可以与JavaScript共存,允许两者一起工作。 PU架构的机器码, WebAssembly字节码不能直接在任何一种CPU架构上运行, 但由于非常接近机器码,可以非常快的被翻译为对应架构 的机器码,因此WebAssembly运行速度和机器码接近。(类 比Java bytecode) (摘录自http://blog.enixjin.net/webassembly-introduction/)使用Web Assembly扩展Envoy的好处 Part0 码力 | 43 页 | 2.90 MB | 6 月前3
微博Service Mesh实践Header ➢ 消息类型 ➢ 协议版本 ➢ 序列列化协议(body) Metadata ➢ 服务名 ➢ ⽅方法名 ➢ 系统参数及⽤用户参数 Body ➢ response ➢ RequestService Mesh Meetup · BeiJing Simple 序列列化 �22 微博Service Mesh实践 - WeiboMesh 基础类型 复合类型 type(1b0 码力 | 43 页 | 1007.85 KB | 6 月前3
SOFAMOSN持续演进路径及实践分享并充分优化了性能,目前已经在蚂蚁、UC生产环境进行了验证。落地实践案例蚂蚁落地 – 应用接入 ü 适用于蚂蚁当前的服务发现 体系 ü 通过中间件通道对应用推送 MOSN调用地址 ü 通过扩展cluster类型的方式 动态获取配置中心后端 ü MOSN出向路由基于明确的 服务依赖关系生成 ü 服务通过 id:version 定义 ü 适用于SOA化服务,标准微 服务 ü 适用于跨语言通信的场景蚂蚁落地 复杂路由 ü 基于链式路由机制扩展,使 用router match,subset等 开源能力实现 ü 适配蚂蚁三地五中心机房部 署,LDC/弹性架构 ü 蚂蚁内部划分R/G/C三种 zone类型,每个Zone的能 力不保证对等 ü 适用于单次简单路由无法解 决的复杂架构场景(如非对 等路由,不确定当前zone 是否有该服务的提供方) Service A MOSN 深圳机房 上海机房0 码力 | 29 页 | 7.03 MB | 6 月前3
严选 ServiceMesh 实践架构 • 使用 Consul 作为服务发现组件 • 数据面:cNginx • 控制面:Consul 管理后台5/24 服务治理能力 – 基于严选第一代ServiceMesh(cNginx) 类型 功能 能力提供方 服务调用方(Client) 服务提供方(Server) 服务注册与发现 注册发现:基于 Consul √ 调用控制 协议支持:HTTP 1.X/2.X,可扩展至 TCP √ Service Mesh 解决方案 • 数据面:Envoy • 控制面:Pilot,Mixer,Citadel,Galley10/24 功能视角 - 服务治理能力 – 基于Istio+Envoy 类型 功能 能力提供方 服务调用方(Client) 服务提供方(Server) 服务注册与发现 注册发现:云外基于 Consul,云内基于 K8s 默认的 ETCD √ 调用控制 协议支持:HTTP0 码力 | 25 页 | 2.07 MB | 6 月前3
Service Mesh是下一代SDN吗:从通信角度看Service Mesh的发展Services How to map multiple logic services inside one process to Istio service?产品化增强-兼容粗粒度的SOA类应用 Process Service-A Service-B Service-C Sidecar Process Process Service B Process Service-E0 码力 | 27 页 | 11.99 MB | 6 月前3
阿里巴巴超大规模神龙裸金属 Kubernetes 集群运维实践运维管控 在离线混部 额度管控 监控体系 多租隔离 上层业务 集 团 业 务运维挑战 • 规模大 • 集群规模大 (数十个集群),节点数量多 (数十万节点) • 业务线多、应用数量多、应用类型复杂 (有状态、无状态、多语言) • 基础环境复杂 • 大规模 在线、离线 混部 (运维打通) • 装机模板、OS版本、内核版本多;内核补丁、参数不同;其他如网卡中断打散 • 稳定性要求高 •0 码力 | 21 页 | 7.81 MB | 6 月前3
共 10 条
- 1













