从0到1基于Kitex+Istio 的微服务系统建设

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 从0到1基于Kitex+Istio 的微服务系统建设 Construct - Jason 2024/05/25
2. 分享人 - Jason Construct Jason
3. AGENDA 议题 01. 从0到1的微服务系统 02. 可复用性 & 自动化流程 03. 流量管理以及泳道系统 04. Mesh可观测性 05. 为什么选择CloudWeGo
4. 01 从0到1的微服务系统 背景、约束和应对策略,选型&架构图
5. 服务端架构的发展
6. 背景&约束&选型 存量系统的衔接和处理 gRPC vs Kitex Service Mesh
7. Kitex + Istio Kitex 如何在 Istio 落地? 1. Kitex Server side: 2. Kitex Client side:
8. Architecture 1. 新老系统的连接 2. 定时任务 CronJob 3. Namespace
9. 02 可复用性 & 自动化流程 Reference impl., Common lib, Pipeline, Registry
10. 可复用性 1. Reference Implementation 2. CloudWeGo 脚手架工具(推荐) 3. Common lib
11. 可复用性 4. Kitex 官方插件
12. Pipeline 代码合并后,流水线自动触发, CI/CD极大提升了研发效率。
13. Pipeline - Code Check MR合并前卡点:nilaway code check 流水线;约降低panic率 90%
14. 03 流量管理以及泳道系统 Traffic Management, SwimeLane
15. Istio
16. 流量管理 1. VirtualService 2. DestinationRule
17. Kitex 在 Istio 下的服务发现 1. Kitex 本身支持多种服务发现机制 Service Discovery | CloudWeGo 2. 方案:依赖 Istio,并最终依赖 k8s;解耦。 可以根据具体情况灵活决策,Kitex 支持度较高。
18. 流量管理-Circuit Breaker Kitex 服务熔断限流,统一由 Istio 接管
19. Kitex-Circuit Breaker[可选]
20. 泳道系统 1. 微服务下,开发同学只需 要关心正在开发的微服务,并 不需要把微服务集群起起来。 2. test 环境或者 ppe环境, 需要做对应的流量控制:通过 http header 的形式,对流量 进行打标染色 3.在流量调度层面,只会把染 色的流量调度到染色的微服务, 所以线上用户不会受到影响
21. Kitex传递泳道上下文 HTTP Header: Kitex Context: Istio VirtualService:
22. 04 Mesh可观测性 Tracing & pyroscope & prometheus & grafana
23. Tracing 1. What is tracing? 相当于给请求做了个 CT scan; 可以知道请求链路上的所有信息: 耗时,执行顺序,具体方法等
24. Jaeger & OpenTelemetry Jaeger is a distributed tracing platform released as open source by Uber Technologies. OpenTelemetry 是一套 API、SDK 和工具的集合, 是一个开放标准 和工具集。使用它来对软件进行插桩、生成、收集和导出遥测数据(指 标、日志和追踪),以帮助您分析软件的性能和行为。
25. Kitex with Jaeger & OpenTelemetry 基于 Jaeger 和 OpenTelemetry 初始化 trace
26. Kitex with Jaeger & OpenTelemetry 下游 Kitex Server 通过定制 middleware,解析 trace 信息并传递
27. Kitex & OpenTelemetry[备选]
28. Kitex & Pyroscope - Profiling
29. Kitex & Pyroscope - Profiling
30. Prometheus & Grafana Istio 对 Prometheus 有很好的官方支持,详情参考:Istio / Prometheus。因此,可以在全局维度,进行监控大盘的 制定;后续新微服务增加自动继承。
31. Istio-level 全局通用报警
32. Kitex & Prometheus[备选]
33. 05 为什么选择 CloudWeGo
34. 为什么选择 CloudWeGo 1. 高并发性能出色: 2倍 2. 高可用:>99.999% 3. 稳定:作为框架,稳定到几乎感觉不到它的存在。 4. 有力的官方支持:工作时间内承诺会在1-2小时内跟进处理 5. 社区繁荣: 全球 16 万+用户关注,以及 2 万+ GitHub star
35. THANKS

Accueil - Wiki
Copyright © 2011-2024 iteam. Current version is 2.137.1. UTC+08:00, 2024-11-16 02:47
浙ICP备14020137号-1 $Carte des visiteurs$