2022云原生编程挑战赛 Sidecar QPS优化 参赛过程和体验

简介: 这是我第2次参加云编程挑战赛了,在这里,我向大家分享一下此次比赛的参赛经历和比赛感谢。希望在一些志同道合的朋友身上可以产生一定的共鸣,大家再接再厉,共创优秀成绩!

还记得2年前,我有幸参加了首届云原生编程挑战赛,当时的比赛场景还历历在目。光阴如梭,转眼2年过去了,没想到机缘巧合,我又有机会参见第三届云原生编程挑战赛,心里也甚至激动。
我选择了赛道一,对Sidecar的性能进行优化,这是一个非常有意思的题目。我们需要用最合理的方式为Sidecar分配资源,让整个系统的整体性能达到最优,但同时又要尽可能的降低资源的使用量(无脑大量分配资源的方法显然不可取的)。
那如何为了个Sidecar分配资源呢?显然的方法就是,那个服务比较繁忙,就为哪个服务分配更多的资源了。于是,我就想当然的根据每个容器的CPU使用率进行分配了。可代码运行结果一出来,我就傻眼了,效果非常的差。经过一番调查,发现拿到的实际CPU使用率是一段时间的平均值,非常不准,无法真实反映case执行时的情况,无奈只能另寻出路。
我一直坚信,对资源的分配,一定是基于业务的繁忙情况,那除了CPU使用率外,还有哪些指标可以体现这个繁忙情况呢?经过反复阅读赛题(每次,一切答案也许都隐藏在赛题之中),我发现系统提供的日志里,包含了每个服务的调用和被调用信息,如果能得到每个服务的调用次数,和流量情况,那不是可以按照这个负载进行资源分配了?想到就做,于是,一个日志分析程序呼之而出,上线一跑,别说,效果还是不错,至少证明方向没有错误。
除了资源的分配,赛题提示可以通过EnvoyFilter对Sidecar进行优化,由于我对Istio是零基础,于是只能恶补各种基础知识,经过一番研究,有了几个点子,比如开启port reuse,设置负载均衡等等,但是根据一番测试,效果并不明显,也不明白具体的原因。为初赛留下了遗憾。不过,我觉得这也应该是比赛的有趣之处,留一些困惑,留一些疑问,才会有更大的进步嘛。待到决赛那天一定要好好请教各位导师,这其中的奥妙所在。
经过数月的努力,最终终于入围了决赛,心里也是无比激动的。每一次比赛都是对自身的磨练,感慨于对手的强大,抒发着自己的激情,打磨着自己的意志,体会着自身的进步,这就是比赛的意义。因此,最后不得不由衷感谢大赛主办方和天池,正是他们的存在,才让我们有机会接触一些最前沿的技术,找到前进的方向!

相关文章
|
28天前
|
人工智能 Cloud Native Java
云原生技术深度解析:从IO优化到AI处理
【10月更文挑战第24天】在当今数字化时代,云计算已经成为企业IT架构的核心。云原生作为云计算的最新演进形态,旨在通过一系列先进的技术和实践,帮助企业构建高效、弹性、可观测的应用系统。本文将从IO优化、key问题解决、多线程意义以及AI处理等多个维度,深入探讨云原生技术的内涵与外延,并结合Java和AI技术给出相应的示例。
93 1
|
1月前
|
Cloud Native API 持续交付
利用云原生技术优化微服务架构
【10月更文挑战第13天】云原生技术通过容器化、动态编排、服务网格和声明式API,优化了微服务架构的可伸缩性、可靠性和灵活性。本文介绍了云原生技术的核心概念、优势及实施步骤,探讨了其在自动扩展、CI/CD、服务发现和弹性设计等方面的应用,并提供了实战技巧。
|
2月前
|
机器学习/深度学习 人工智能 Cloud Native
2024 天池云原生编程挑战赛决赛名单出炉,冠军来自中山大学、昆仑数智战队
2024 天池云原生编程挑战赛由阿里云主办,云原生应用平台、天池以及市场营销部联合承办,本届大赛成功吸引了超过 20500 支队伍积极参与,参赛者来自 10 多个国家和地区,大赛规模创下历史新高。
|
2月前
|
Kubernetes 监控 Cloud Native
Cluster Optimizer:一款云原生集群优化平台
**Cluster Optimizer** 是一款云原生集群优化平台,旨在通过自动化和智能化工具帮助企业降低云成本,解决云原生架构中的成本管理难题。面对资源闲置、配置不当和缺乏自动化优化机制等挑战,Cluster Optimizer能够深入分析云资源、应用和用户行为,精准识别优化机会,并给出具体建议,涵盖节点组、节点、GPU 节点、磁盘、持久卷和应用等多个维度。通过优化实例类型、自动扩缩容和资源分配,帮助企业降低成本、提升性能和效率。[点击此处](https://www.wiseinf.com.cn/docs/setup/) 免费安装和试用 **Cluster Optimizer 社区版**。
98 9
|
3月前
|
存储 Kubernetes Cloud Native
探索Python编程的奥秘云原生时代的容器编排:Kubernetes入门与实践
【8月更文挑战第30天】本文以浅显易懂的方式,探讨了Python编程的核心概念和技巧。从基础语法到高级特性,再到实际应用案例,逐步引导读者深入理解Python编程的精髓。通过本文的学习,读者将能够掌握Python编程的基本技能,并激发进一步探索的兴趣。
41 13
|
2月前
|
Cloud Native Java API
为何这款轻量级框架正悄然改变云原生应用开发格局?——探索Micronaut带来的新编程体验
【9月更文挑战第5天】随着云计算的发展,企业纷纷转向云原生应用开发。Micronaut是一款轻量级、高性能的Java框架,专为微服务架构设计,支持JVM和GraalVM,是构建云原生应用的理想选择。本文介绍Micronaut的基本概念并通过示例展示如何快速搭建云原生应用。使用Micronaut CLI可以轻松创建项目并添加REST接口,其注解驱动的API让开发变得简单直接。Micronaut还提供了健康检查、指标收集等高级功能,支持AOT编译,优化应用性能。对于追求高效开发的团队而言,Micronaut提供了一种全新的解决方案。
62 6
|
3月前
|
运维 Kubernetes Cloud Native
云原生之旅:Kubernetes 集群的搭建与实践Python 编程入门:从零基础到编写实用脚本
【8月更文挑战第30天】在数字化转型的大潮中,云原生技术以其弹性、可扩展性及高效运维能力成为企业IT架构升级的关键。本文将通过实际操作演示如何在本地环境搭建一个简易的Kubernetes集群,带你领略云原生的魅力所在。从集群规划到服务部署,每一步都是对云原生理念的深刻理解和应用。让我们共同探索,如何通过Kubernetes集群的搭建和运维,提升业务灵活性和创新能力。
|
2月前
|
Kubernetes Cloud Native Java
探索未来编程新纪元:Quarkus带你秒建高性能Kubernetes原生Java应用,云原生时代的技术狂欢!
Quarkus 是专为 Kubernetes 设计的全栈云原生 Java 框架,凭借其轻量级、快速启动及高效执行特性,在 Java 社区脱颖而出。通过编译时优化与原生镜像支持,Quarkus 提升了应用性能,同时保持了 Java 的熟悉度与灵活性。本文将指导你从创建项目、编写 REST 控制器到构建与部署 Kubernetes 原生镜像的全过程,让你快速上手 Quarkus,体验高效开发与部署的乐趣。
39 0
|
3月前
|
Kubernetes Cloud Native JavaScript
云原生入门:Kubernetes的简单部署与管理探索Python编程的魔法:从基础到进阶
【8月更文挑战第28天】随着云计算技术的蓬勃发展,云原生(Cloud Native)已经成为现代软件开发和运维的重要理念。本篇文章将引导读者了解云原生的基础概念,并以Kubernetes为例,展示如何在云平台上进行简单的部署和管理。通过实际操作,你将学会如何利用Kubernetes管理容器化应用,进而掌握云原生服务的核心技能。 【8月更文挑战第28天】在这篇文章中,我们将一起踏上一段激动人心的旅程,穿越Python编程的世界。无论你是初学者还是有一定经验的开发者,这篇文章都将为你揭示Python的奥秘和魅力。我们将从基础语法开始,逐步深入到面向对象编程、函数式编程技巧,以及如何利用Pytho
|
8天前
|
Cloud Native 安全 数据安全/隐私保护
云原生架构下的微服务治理与挑战####
随着云计算技术的飞速发展,云原生架构以其高效、灵活、可扩展的特性成为现代企业IT架构的首选。本文聚焦于云原生环境下的微服务治理问题,探讨其在促进业务敏捷性的同时所面临的挑战及应对策略。通过分析微服务拆分、服务间通信、故障隔离与恢复等关键环节,本文旨在为读者提供一个关于如何在云原生环境中有效实施微服务治理的全面视角,助力企业在数字化转型的道路上稳健前行。 ####
下一篇
无影云桌面