2022云原生编程挑战赛 赛道1 参赛心得 by Misterioso

简介: 本文主要介绍《2022第三届云原生编程挑战赛-赛道1:针对Sidecar模式下的服务网格数据面应用服务访问QPS和延时的优化》的参赛心得。开发者社区的文章似乎不支持latex,所以本文一些内容用图片展示,具体文本可以在https://github.com/Tango-Club/SomeMesh看到。代码部分缺少整理,可能有比较多无用的代码或者写的比较混乱,核心部分在 optimize/optimizer.py 中。

针对Sidecar模式下的服务网格数据面应用服务访问QPS和延时的优化

本赛题的目标是提升服务网格的整体性能, 具体的来说就是平均时延/资源节约率/QPS.

赛题有两个用来量化性能的指标:

图片.png

就如同赛题里所说的, 我们的优化手段主要有三点:

  1. 合理分配Sidecar的资源
  2. 平台特性调优
  3. Sidecar配置调优

接下来我们具体分析这三点内容.

合理分配Sidecar的资源

这可以说是本赛题的重中之重, 直接影响到性能分数和资源分数.

我们的解法分为以下几个步骤:

图片.png
图片.png

平台特性调优

平台特性主要是multi-buffer,可以调整的参数有是否开启和pollDelay值的大小, 我们对这个了解的不多, 做了一些尝试后认为将pollDelay调小到0.1以内或者直接关闭对分数比较有利.

Sidecar配置调优

同样由于我们其实没有istio的实际使用经验, 只能凭借一些资料查阅和实际测试.

最后发现似乎将proxy.istio.io/config: 'concurrency'稍微调大会有一些正面作用, 例如调到[2, 4].

总结

因为欠缺对istio的了解, 所以我们只能把系统当成一个黑盒. 主要把功夫下在资源分配的策略上, 凭借一些贪心策略去构建一个分配资源的模型. 重点在于最低限度使用资源的同时, 根据找到的一些衡量sidecar权重的指标合理分配资源.

实际上赛题中还提供了很多其他信息和数据(例如请求大小, 上一轮的CPU/内存使用量等), 但是我们在经过一些尝试和测试后并没能在其中发现一些能显著对结果有正面相关性的指标(或者并不显著的比目前选择的两个指标更好), 所以最后主要还是只通过请求数量和sidecar数量来分配资源.

相关文章
|
7天前
|
Cloud Native 算法 程序员
代码与禅意:编程中的哲学思考构建未来:云原生架构在现代企业中的应用与挑战
【5月更文挑战第30天】 在数字世界的繁花似锦之下,编程不仅仅是一种技能,更是一场关于逻辑、美学和哲学的深刻对话。本文将探讨编程过程中所体现出的哲学理念,从禅宗的角度出发,揭示代码背后蕴含的深层次意义。我们将一同走进程序员的内心世界,体会在面对复杂问题时,如何通过冥想般的编码实践,达到问题解决的顿悟。
|
7月前
|
Cloud Native 中间件 Serverless
2023 云原生编程挑战赛收官:1.8 万人报名,冠军花落北京邮电大学、电子科技大学、旷识科技
2023 云原生编程挑战赛收官:1.8 万人报名,冠军花落北京邮电大学、电子科技大学、旷识科技
2023 云原生编程挑战赛收官:1.8 万人报名,冠军花落北京邮电大学、电子科技大学、旷识科技
|
8月前
|
Cloud Native 安全 前端开发
2023 云原生编程挑战赛入围决赛答辩名单公布
2023 云原生编程挑战赛入围决赛答辩名单公布
|
11月前
|
开发框架 运维 Kubernetes
【参赛送好礼】2023 云原生编程挑战赛·赛道 3 赛题解析助您快速 get 参赛技能
【参赛送好礼】2023 云原生编程挑战赛·赛道 3 赛题解析助您快速 get 参赛技能
|
11月前
|
SQL Rust Cloud Native
【参赛有奖】云原生编程挑战赛·赛道 2 邀你来战!
【参赛有奖】云原生编程挑战赛·赛道 2 邀你来战!
|
8天前
|
存储 弹性计算 监控
【阿里云云原生专栏】成本优化策略:在阿里云云原生平台上实现资源高效利用
【5月更文挑战第29天】本文探讨了在阿里云云原生平台上实现资源高效利用和成本优化的策略。通过资源监控与评估,利用CloudMonitor和Prometheus等工具分析CPU、内存等使用情况,识别浪费。实施弹性伸缩策略,利用自动伸缩规则根据业务负载动态调整资源。借助容器化管理和Kubernetes编排提高资源利用率,优化存储选择如OSS、NAS,以及网络配置如VPC和CDN。示例展示了如何使用Kubernetes的HorizontalPodAutoscaler进行弹性伸缩,降低成本。
44 4
|
8天前
|
边缘计算 Cloud Native 数据管理
【阿里云云原生专栏】云原生背景下的AIoT布局:阿里云Link平台解析
【5月更文挑战第29天】阿里云Link平台,作为阿里云在AIoT领域的核心战略,借助云原生技术,为开发者打造一站式物联网服务平台。平台支持多协议设备接入与标准化管理,提供高效数据存储、分析及可视化,集成边缘计算实现低延时智能分析。通过实例代码展示,平台简化设备接入,助力智能家居等领域的创新应用,赋能开发者构建智能生态系统。
47 3
|
8天前
|
存储 Kubernetes Cloud Native
【阿里云云原生专栏】云原生容器存储:阿里云CSI与EBS的高效配合策略
【5月更文挑战第29天】阿里云提供云原生容器存储接口(CSI)和弹性块存储(EBS)解决方案,以应对云原生环境中的数据存储挑战。CSI作为Kubernetes的标准接口简化存储管理,而EBS则提供高性能、高可靠性的块存储服务。二者协同实现动态供应、弹性伸缩及数据备份恢复。示例代码展示了在Kubernetes中使用CSI和EBS创建存储卷的过程。
60 3
|
9天前
|
弹性计算 运维 监控
【阿里云云原生专栏】自动化运维的艺术:阿里云云原生平台的自动化运维工具集
【5月更文挑战第28天】阿里云云原生平台提供全面的自动化运维工具,涵盖监控告警、资源管理、部署更新、故障自愈、安全管理和数据备份等方面,简化运维工作,增强系统稳定性。通过智能工具集,运维人员能专注于业务优化,实现高效运维,为企业数字化转型提供有力支持。
139 3
|
9天前
|
供应链 Cloud Native 安全
【阿里云云原生专栏】云原生与区块链的交响曲:阿里云 BaaS 平台的应用展望
【5月更文挑战第28天】阿里云BaaS平台融合云原生与区块链技术,提供一站式便捷、高性能且安全的区块链服务。在供应链和金融等领域应用广泛,如智能合约示例所示,助力数字化转型。未来,两者融合将深化,创造更多应用模式。企业和开发者应把握机遇,借助阿里云BaaS平台开创未来。
226 1

热门文章

最新文章