方志恒 轻舟服务网格的无侵入增强 Istio 经验## 轻舟服务网格的无侵入增强 Istio 经验 方志恒(网易数帆 云原生技术专家) ## 关于侵入、无侵入 ☑ 立目标,求上得中 ● 为什么强调“无侵入”? 业务适配、快速落地、定制需求等,有太多“侵入”的理由 ● 长期维护、社区对齐、版本演进等,一分“侵入”一分成本 ## 定开、维护的经验 ### 1. 原生的API,无侵入扩展 直接使用 做上层的封装、转换 “计算机科学领 sha256: nil url: oci://slimeio/rider_plugin:0.1.0 ## ● 使用上 不能说差不多,简直是一模一样; ## ● 实现上 不能说没侵入,但只有一点点; ## 插件扩展 - WasmPlugin/RiderPlugin ③ - name: proxy.filters.http_rider ## 插件扩展 - WasmPlugin/RiderPlugin0 码力 | - 页 | 1.28 MB | 1 年前3
2.2.1通过Golang+eBPF实现无侵入应用可观测## GCN ## 通过Golang + eBPF实现无侵入应用可观测  张海彬 阿里云 应用可观测技术专家  无侵入  多语言/多协议/多框架  全栈覆盖 ## 无侵入性 ! 2f68/p27_1.jpg) 告警收敛,幸福感UP ## eBPF + Golang 在阿里云应用可观测的实践 应用监控eBPF版 ## 无侵入的应用可观测 eBPF是一种在Linux内核运行的沙盒程序,无需修改任何应用代码,提供无侵入的应用无关、语言无关、框架无关的应用可观测能力,提供如网络、虚拟内存、系统调用等Otel无法获取的数据指标。 eBPF & Otel SDK均支持0 码力 | 29 页 | 3.83 MB | 1 年前3
华为微服务框架ServiceCombServiceComb的特点是什么? 03 ServiceComb的最新进展? 04 如何加入到ServiceComb社区开发? ## ServiceComb是一个什么样的项目? 开源 框架 侵入式 微服务 解决方案 非侵入式 多语言 ## ServiceComb的来源  传统的方法: 开发人员埋点, 标准SDK/JavaAgent, 流量分光镜像。 云原生下的难题: 微服务迭代快, 侵入式监控效率低; 云网络虚拟化, 东西向流量监控难。0 码力 | 39 页 | 8.44 MB | 1 年前3
Service Mesh的思考及在华为云的实践Application Service Mesh Transport Network Physical ## 为什么要使用 • 解放业务开发者 • 改造遗留老应用成为云原生应用 • 代码0侵入 · 学习曲线 ## 华为内部的代理架构演进  53b573401665b595f76554/p7_3.jpg) Agent Java SDK Agent Lib Consumer —Register— Register 多语言,非侵入式rest api Service Registry (Eureka Server) uService1 Agent REST API Agent REST API Agent Lib uService2 [Image](/uploads/documents/6/9/f/b/69fb9d73ed53b573401665b595f76554/p8_2.jpg) ## Mesher Design Goal • 侵入式与非侵入式可结合使用 - 不绑定基础设施 • 服务可视化 • 高性能,轻量 - 尽最大可能插件化各功能模块 - 透明的产品体验:整合容器平台,微服务引擎,API网关,指标监控,日志审计等云上服0 码力 | 29 页 | 1.55 MB | 2 年前3
华为云分布式事务DTM最佳实践柔性事务|SAGA 补偿事务| |---|---|---|---|---| |数据一致性|强一致|最终一致|最终一致|最终一致| |总体性能|低|高|取决于实现|取决于实现| |业务侵入性|较低侵入|高侵入|高侵入|高侵入| |适用广泛性|一般|一般|高|低| |产品成熟度|高|高|一般|低|  /login GET Broker(Java) Converter(Go) /auth GET /value Istio强绑定Kubernetes平台(1.7.4+) • 从成本角度讲Linkerd并不适合做SideCar部署,JVM资源占用较多 • 在ServiceComb和CSE中的积累 - 最大优势,侵入式与非侵入式的无缝结合,混编,统一的产品体验。 ## 开源 • Service Center https://github.com/ServiceComb/service-center • ServiceComb-Java0 码力 | 52 页 | 4.37 MB | 2 年前3
CloudWeGo 开源项目介绍过反射来提取。 第三种是利用了Kitex提供的传输层透传能力,对业务没有侵入性。最后选择了这一种方案。 Trace信息跨服务传输方案 说明 Pros Cons 消息层:thrift协议扩展,以容纳trace信息 Thrift没有header结构,只能进行协议扩展(Kitex支持自定义协议扩展) 对业务本身无侵入性 实现成本较高 消息层:idl里增加通用参数,例如BaseReq和 实现成本低 需要修改idl,新增业务无关的字段,侵入性强 传输层:透传trace信息 Kitex提供了传输层透传能力(https://github.com/cloudwego/kitex/blob/develop/docs/guide/extension/transmeta_cn.md),可利用该特性在传输层设置\读取trace信息 实现成本低,对业务本身无侵入性 无 透传方案定了之后,整体的流程就清晰了。首先客户端会在 来根据header里的uid = 100匹配。 但这样的做法有几个明显的缺点: 1 不够通用:以具体某个业务属性标识(如:uid)作为流量路由匹配规则,我们需要将这个业务属性手动在全链路里透传,这本身对业务侵入性较大,需要业务配合改造。并且当我们要使用其他业务属性的时候,又需要全链路业务都改造一遍,可想而知,是非常不通用的做法 路由规则容易频繁变动,容易造成规则臃肿:以具体某个业务属性标识(如:uid)0 码力 | 37 页 | 89.14 MB | 2 月前3
Service Mesh微服务化和传统框架微服务化混合部署协同实践分享 - 梅斯医学基于ServiceComb的微服务实践
Cluster - 基于PHP的存量业务,核心业务,公司有多年的php的技术积累。 - 基于Java的新开发业务,要求开发周期短,尽快推向市场。 - 架构演进过程,对于存量业务,要求稳定,不碰业务代码,零侵入完成微服务化;对于新开发业务,要求高性能,细化到业务的治理和监控。 ## iDrugSafety微服务化选型 ## 原则 • 架构稳定,有可持续发展、演进能力 - 支持多语言、传统微服务和 利用配置即使用的开箱即用能力,可以快速搭建,不用来回筛选试错,降低时间成本。 ✓ 支持对业务代码的打点监控,利用框架能力采集业务运行时的状态。 ✓ ServiceComb天然支持传统侵入式与ServiceMesh非侵入式微服务混合部署,协同治理。 - 基于PHP的存量业务,选型华为商用并开源的ServiceMesh方案Mesher,实现微服务化改造 ✓ Mesher本身是一套跨语言的微服务治理方案,治理能力与ServiceComb 完美解决Java和PHP共存场景 ## ● 传统与新兴微服务化方式共存 ✓ 混合部署、协同治理 ## ● 丰富的监控运维 ✓ 细化到业务层面的微服务监控运维 ## ● 遗留应用0改造 ✓ 支持0侵入业务代码,使用成本低,对原有业务无影响 ## 微服务化收益 • 整合php的资源(如一些基础服务),达到了快速开发,完成项目进度的目的 • ServiceComb提供了很多最佳实践,如微服务的监控和分布式调用链追踪0 码力 | 11 页 | 11.88 MB | 2 年前3
Service Mesh的实践分享|编码难度|容易。IDL接口规范|容易。IDL接口规范|难。需要自行处理HTTP请求和响应(目前还没有生成HTTP sdk)| |应用侵入性|侵入性大。复杂客户端会给应用造成负担,包括资源占用、依赖冲突等等|侵入性小。SDK只有简单的寻址和序列化/反序列化的功能|无侵入性。应用自行调用| |运维难度|难度大。客户端的问题会对应用直接产生影响,耦合太重|难度小。Sidecar故障可以将流量临时切到remote0 码力 | 30 页 | 4.80 MB | 1 年前3
共 199 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20













