istio go语言 谷歌开发

现有产品功能(每个功能具体支持哪些方式,优缺点)
服务注册发现
流量劫持
路由
负载均衡
熔断降级
流量控制(限流、流量分配)
重试机制
日志管理
支持的协议
监控(健康检查)
安全验证(加密、加签、用户验证、黑白名单)
滚动升级(发布)
UI控台
运维API
权限管理
故障注入/mock测试
对外服务
多集群调用

现有产品架构设计
组件模块
支持平台
性能
伸缩性
可扩展性
容错性(故障恢复方案、恢复时间)
可管理性
系统容量(可以支持多少服务)

现有产品优缺点

所有版本都要看一下,哪些功能删掉了,哪些功能新增,前后对比

先看,把不懂的周四汇总一下,然后讨论。

验证内容

细化验证点

备注

负责人

各种网络调用方式的性能差异

通过iptables方式调用:client-->iptables-->envoy-->server

观察:tps、CPU、内存、RT等指标

客户端和服务端使用统一的go语言编写的http服务(由贾春迎提供)。

范小亮、邹杰

通过直连方式调用:client-->envoy-->server

通过cilium方式调用:client-->cilium-->envoy-->server

陈锋

各开发语言实现的proxy性能对比

Go语言(参考SOFAMosn)

调用模式为:client --> proxy --> server

客户端和服务端使用统一的go语言编写的http服务。

Proxy仅实现最简单的流量转发功能及一个模拟的最小连接数负载均衡算法(1000个节点的计数器,有实际读写内存的)。

观察:CPU、内存、TPS、RT、镜像包大小等指标。

贾春迎

Rust语言(参考Linkerd)

贾春迎

Java语言(参考Netty与OSP)

翟晓彤

C++语言(参考Envoy)

翟晓彤

组件及应用升级的可行性

Istio的控制平面升级、数据平面升级及应用升级

在有一定压力的持续请求的情况下测试。

严首骅

Linkerd的控制平面升级、数据平面升级及应用升级

陈锋

Envoy插件开发是否能满足定制要求

验证envoy是否支持汇付现有的路由及流量管理方式(通过开发插件的方式)。

Envoy目前是最主流的sidecar方案,其稳定性已有保障,但是它能否满足现有的业务场景是一个重要的评判标准。

朱一琪

异构注册中心支持验证

验证通过扩展istio的方式是否能支持k8s与虚拟机共存的方式。

在今后的迁移方案中必定需要考虑少量灰度流量切到k8s的场景,因此必须要考虑虚拟机与k8s共存的情况。

朱一琪

高可用功能验证

对于Istio的高可用功能验证

在有一定压力的持续请求的情况下测试:

控制平面3台服务端,其中1台挂了、3台都挂了的两种场景测试。

数据平面3台服务端,其中1台挂了、3台都挂了的两种场景测试。

翟晓彤、李艳丽

service mesh学习规划的更多相关文章

  1. 微服务应用新趋势:Service Mesh、AIOps和中台化

    微服务技术由于天生支持快速迭代.弹性扩展的特点,使企业能够在不确定性下提升发展速度及抗风险能力,受到了越来越多的关注.当前,云服务商纷纷试水微服务产品,最为典型的,当属推出轻舟微服务平台.剑指整个微服 ...

  2. 蚂蚁金服 Service Mesh 实践探索

    SOFAMesh是蚂蚁金服在ServiceMesh方向上的探索,下面是它高级技术专家敖小剑在QCon上海2018上的演讲. Service Mesh 是一个 基础设施层,用于处理服务间通讯.现代云原生 ...

  3. 详细了解 Linkerd 2.10 基础功能,一起步入 Service Mesh 微服务架构时代

    Linkerd 提供了许多功能,如:自动 mTLS.自动代理注入.分布式追踪.故障注入.高可用性.HTTP/2 和 gRPC 代理.负载均衡.多集群通信.重试和超时.遥测和监控.流量拆分(金丝雀.蓝/ ...

  4. 微服务(Microservices)和服务网格(Service Mesh)架构概念整理

    注:文章内容为摘录性文字,自己阅读的一些笔记,方便日后查看. 微服务(Microservices) 在过去的 2016 年和 2017 年,微服务技术迅猛普及,和容器技术一起成为这两年中最吸引眼球的技 ...

  5. Istio入门实战与架构原理——使用Docker Compose搭建Service Mesh

    本文将介绍如何使用Docker Compose搭建Istio.Istio号称支持多种平台(不仅仅Kubernetes).然而,官网上非基于Kubernetes的教程仿佛不是亲儿子,写得非常随便,不仅缺 ...

  6. 下一代微服务 ~ Service Mesh

    微服务(Microservices) 微服务(Microservices)是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成.系统中的各个微服务可被独立部署,各个微服务之间是松耦合的.每个微服 ...

  7. Java架构技术进阶之:从分布式到微服务,深挖Service Mesh

    自从几十年前第一次引入分布式系统这个概念以来,出现了很多原来根本想象不到的分布式系统使用案例,但同时也引入了各种各样的新问题. 当这些系统还是比较少比较简单的时候,工程师可以通过减少远程交互的次数来解 ...

  8. 蚂蚁金服缘何自研Service Mesh?

    2018年,微服务方兴未艾,Service Mesh(服务网格)又快速崛起.有观点认为,2018年可被称之为“Service Mesh元年”,在未来两年中,Service Mesh将迎来爆发式增长,成 ...

  9. 蚂蚁金服 Service Mesh 渐进式迁移方案|Service Mesh Meetup 实录

    小蚂蚁说: 本文是基于在 Service Mesher Meetup 上海站的主题分享<蚂蚁金服 Service Mesh 渐进式迁移方案>内容整理,完整的分享 PPT 获取方式见文章底部 ...

随机推荐

  1. HDU 6205 card card card ( 思维 )

    题意 : 给定两个序列 a 和 b ,保证 a 数列的和 == b数列的和,从头到尾考虑 (a[i] - b[i]) 的前缀和,直到前缀和为负数则无法进行下去,所得的便是a[1~i]的和,现在有一个操 ...

  2. [算法]Min_25筛

    前言 本篇文章中使用的字母\(p\),指\(\text{任意的} p \in \text{素数集合}\) 应用场景 若函数\(f(x)\)满足, \(f(x)\)是积性函数 \(f(p)\)可以使用多 ...

  3. 【转】DataRow复制一行到另一个DataTable

     源地址:http://www.cnblogs.com/pains/archive/2007/11/22/969003.html   下面两个方法是DataRow复制一行到另一个DataTable的, ...

  4. 最简单的flask项目详解

    # 第一部分,初始化:所有的Flask都必须创建程序实例, # web服务器使用wsgi协议,把客户端所有的请求都转发给这个程序实例 # 程序实例是Flask的对象,一般情况下用如下方法实例化 # F ...

  5. canvas 方块旋转案例

    <!doctype html><html><head> <meta charset="UTF-8"> <meta name=& ...

  6. P1439 【模板】最长公共子序列(LCS)

    先来看一看普通的最长公共子序列 给定字符串A和B,求他们的最长公共子序列 DP做法: 设f[i][j]表示A[1~i]和B[1~j]的最长公共子序列的长度 那么f[i][j]=max(f[i-1][j ...

  7. r hive

    w r只能处理有限量的数据 pdf 467

  8. C++类前置声明

    cpp前置声明: 前置声明只能作为指针或引用,不能定义类的对象,也不能调用对象中的方法. 详见:https://www.cnblogs.com/dobben/p/7440745.html

  9. Parcel在binder通信readStrongBinder和writeStrongBinder

    Binder IPC通信中,Binder是通信的媒介,Parcel是通信的內容.远程调用过程中,其参数都被打包成Parcel的形式来传递. 在IPC通信的Proxy端,我们经常可以看到下面类似的代码, ...

  10. Visual Studio格式化所有文档

    1.下载 Format All Files 2. 格式化指定类型的文件 说明: Enable Remove and Sort Usings:移除未使用过的引用+排序引用 Exclusion Patte ...