登顶之路|数字海南架构师谈云原生编程挑战赛参赛心路历程

本文涉及的产品
MSE Nacos/ZooKeeper 企业版试用,1600元额度,限量50份
应用实时监控服务-可观测链路OpenTelemetry版,每月50GB免费额度
函数计算FC,每月15万CU 3个月
简介: 云原生编程挑战赛项目组特别策划了《登顶之路》系列选手访谈,期待通过参赛选手的故事,看到更加生动鲜活的中国开发者。

2022 年 11 月 3 日,第三届云原生编程挑战赛即将迎来终极答辩,18 支战队、32 位云原生开发者入围决赛,精彩即将开启。


云原生编程挑战赛项目组特别策划了《登顶之路》系列选手访谈,期待通过参赛选手的故事,看到更加生动鲜活的中国开发者。


2022 云原编程挑战赛共吸引了 17900+ 支队伍,超过 18000+ 选手报名参赛,覆盖中国、美国、德国、加拿大、新加坡等 13 个国家和地区,汇聚 440+ 国内外顶尖高校和 240+ 领先企业,企业选手占比达 30%+,其中决赛企业选手占比达 75%,大赛规模再创新高!


第一期我们邀请了来自数字海南有限公司的曾辉林,针对参赛历程与感悟进行了一次深度采访。


深度采访


在什么背景下了解到阿里云云原生编程挑战赛,是什么吸引了你们参赛?


起因是我关注了【阿里云云原生】的公众号,偶然在一次推文中发现了 2022 云原生编程挑战赛的启动报名文章,查看后发现今年的赛题比较贴合我们公司开发的一个实际场景,很想去尝试挑战一下,通过参赛去解决一些未来可能会遇到的难题,提前做好准备。工作之后比较少机会参加大赛,我希望通过这个比赛过程能够收获和学习一些实战的技能。


怎么组队的?为何选择了赛道二作为参赛方向?


我们团队的队员都曾经任职在同一家公司,由于技术方向相同、对彼此的技术能力也都比较认可,所以我在看到这篇推文后便联系了另外两位小伙伴发出组团的邀请,大家看过大赛介绍后都觉得很有意思,因此立刻组团开始报名。

1.jpeg

战队:浩瀚武林(居中是本次受访嘉宾)


我们同时报名了赛道一与赛道二,其中赛道一的服务网格技术与我们公司目前的业务较为贴近,而选择主攻赛道二的原因是公司内部 RPC 框架注册中心模块想以 Kubernetes 作为注册中心,就需要调用 kube-apiserver 来获取服务地址列表,刚好赛道二考察基于 list/watch 机制实现高效的边缘自治方案与公司调研的怎么保持服务地址信息的可靠性、实时性、顺序性、高性能也很贴近。也算是着眼于未来,我们最终选择了这个赛道,当然这也意味着我们要去挑战之前不太触及的新技术领域,有兴奋也有担忧。


2.png3.png


之前对边缘云原生方向有接触吗?针对云原生边缘计算场景的 ACK@Edge的高效边缘自治方案,觉得这套方案和同类型方案比有何优势?


对边缘云原生在参赛之前接触比较少,因为它主要领域是在 IoT (物联网)和 CDN 等领域。而我所在的公司是比较偏政企化,所以接触的比较少。


在参赛过程中我们进一步了解了 ACK@Edge 高效边缘自治方案,我的理解是它在边缘节点和云端管控网络断连等异常情况下,业务重启还是节点重启后,节点内或者跨节点间的业务应用通信都将自动恢复,比较适用于边缘计算的弱网络连接状态下应用跨节点通信的场景。


而这套方案和同类型的方案,我觉得它的优点在于性能更高效,资源占用比较低。


这个赛道吸引您的原因是什么?

赛道二吸引我的原因主要有两点:第一点是对于边缘计算技术,是我作为系统架构师希望去主动学习的东西;第二点是因为目前赛道二的内容与公司项目中所调研的内容比较贴合,两者都需要去调用 kube-apiserver 去获取服务列表,有些相似且可以借鉴之处。


4.jpeg


在参赛过程中有难忘的事情吗?


在比赛的最后一周,排行榜的第一和第二的分值与我们相差较大。我们团队连着几个晚上进行了语音讨论,并且尝试了多种方案。最后,在比赛截止的前三天,我们讨论出了一个可行性的方案,同时跟导师开展讨论后进行了验证。最终我们的比分跟第一、第二名的分值相差不大,期间也有一次反超了他们的分值。


您目前任职的公司岗位经验,在参赛过程中有带给您什么灵感吗?


目前,我在数字海南主要担任公司系统架构师一职,主要是系统架构设计,中间件选型和系统性能调优。这次参赛在性能调优上给了我很多灵感,比赛中采用 Golang 的临时对象池,增加临时对象重用率和减少 GC 负担和采用内存缓存策略提高程序的性能。


有没有什么感悟可以跟大家分享的?


这次参赛主要是提升了我的编程技能以及对云边端的更深层次的认知。随着近年来5G 网络、物联网的快速发展,云技术应用的边界也在不断拓展和深入,来应对爆炸式增长的数据量和终端侧“大连接、低时延、大带宽”的市场需求,这将是边缘云的趋势与机会


之前用过印象比较深的阿里云的产品是?


印象比较深的有两个,一个是应用实时监控服务 ARMS 可以基于前端应用、业务自定义等维度,迅速便捷地构建秒级响应的应用监控能力。另外一个是阿里云应用高可用服务 AHAS,它可以提高应用及业务的高可用能力,主要提供流量防护、故障演练、容灾等核心能力。

5.jpeg


参赛过程中最难的是什么时候?


比如在开始的时候,我们团队参与了赛道一和赛道二,同时在两个赛道中都取得了较好的成绩。但后期由于工作以及一些其他原因,加上参赛节奏较紧张,所以那段时期稍微有些松懈,甚至产生了放弃的想法。


在比赛即将截止的时候,我们团队又沟通了几次,大家还是觉得咬咬牙要坚持下来。我们团队在赛道二的成绩与前面选手差距不大,还是非常有机会的,于是三个人熬夜写代码,在工作之余讨论优化方案,与导师沟通,不断解决技术问题,最终完成了这个赛季的冲刺。不论能不能拿到一个好名次,起码能够在这次比赛中学习到一些工作中未曾涉及的领域知识。


您是怎么理解云原生的?


我是近一两年了解到云原生技术,与云原生相关的产品、开源、演进历程等都吸引我去不断了解这个领域的发展。作为一名程序员,是需要不断的去学习一些新的知识,了解前沿的技术趋势。


我在云原生领域比较专注于容器和微服务,微服务解决“应用架构复杂度”问题,容器解决“应用部署问题”问题,Kubernetes 解决应用“编排和调度”问题。我认为容器算是云原生领域中的代表技术,容器提供了应用分发和交付标准,将应用与底层运行环境进行解耦。我在加入到数字海南后,2020 年末公司开展了所有的服务容器化上云计划,用 Kubernetes 解决容器的编排与调度。


选择容器化上云的技术规划时,会有一些顾虑吗?


一开始是有些顾虑的,因为我们的项目要求高可用、高性能、高并发和安全性,所以我们当时先将其他的一些项目进行落地,在逐渐平稳后才将主要项目迁移上容器。容器技术虽然比较繁琐,但是它可以在整个应用程序生命周期工作流中提供了隔离、可移植性、灵活性、可伸缩性和控制的好处,这是容器化可以给我们带来的便捷,所以我们的团队还是在努力的学习并克服容器技术上的一些难题。


对于即将展开的决赛答辩,选一句口号的话,你会怎么选?


我们团队的口号是:态度决定一切,细节决定成败。灵感来源于比赛结束前的一周,我们团队努力追逐赛道二中第一名和第二名的步伐时,在细节中捕捉到了这句口号的关键和灵感。

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
11天前
|
Cloud Native Serverless API
微服务架构实战指南:从单体应用到云原生的蜕变之路
🌟蒋星熠Jaxonic,代码为舟的星际旅人。深耕微服务架构,擅以DDD拆分服务、构建高可用通信与治理体系。分享从单体到云原生的实战经验,探索技术演进的无限可能。
微服务架构实战指南:从单体应用到云原生的蜕变之路
|
3天前
|
Java Linux 虚拟化
【Docker】(1)Docker的概述与架构,手把手带你安装Docker,云原生路上不可缺少的一门技术!
1. Docker简介 1.1 Docker是什么 为什么docker会出现? 假定您在开发一款平台项目,您的开发环境具有特定的配置。其他开发人员身处的环境配置也各有不同。 您正在开发的应用依赖于您当前的配置且还要依赖于某些配置文件。 您的企业还拥有标准化的测试和生产环境,且具有自身的配置和一系列支持文件。 **要求:**希望尽可能多在本地模拟这些环境而不产生重新创建服务器环境的开销 问题: 要如何确保应用能够在这些环境中运行和通过质量检测? 在部署过程中不出现令人头疼的版本、配置问题 无需重新编写代码和进行故障修复
54 1
|
3天前
|
人工智能 Kubernetes Cloud Native
Higress(云原生AI网关) 架构学习指南
Higress 架构学习指南 🚀写在前面: 嘿,欢迎你来到 Higress 的学习之旅!
46 0
|
6月前
|
Cloud Native 关系型数据库 分布式数据库
|
7月前
|
存储 关系型数据库 分布式数据库
登顶TPC-C|云原生数据库PolarDB技术揭秘:单机性能优化篇
阿里云PolarDB云原生数据库在TPC-C基准测试中,以20.55亿tpmC的成绩打破性能与性价比世界纪录。此外,国产轻量版PolarDB已上线,提供更具性价比的选择。
|
6月前
|
运维 Cloud Native 测试技术
极氪汽车云原生架构落地实践
随着极氪数字业务的飞速发展,背后的 IT 技术也在不断更新迭代。极氪极为重视客户对服务的体验,并将系统稳定性、业务功能的迭代效率、问题的快速定位和解决视为构建核心竞争力的基石。
|
6月前
|
存储 关系型数据库 分布式数据库
|
7月前
|
Cloud Native 关系型数据库 分布式数据库
登顶TPC-C|云原生数据库PolarDB技术揭秘:Limitless集群和分布式扩展篇
阿里云PolarDB云原生数据库在TPC-C基准测试中以20.55亿tpmC的成绩刷新世界纪录,展现卓越性能与性价比。其轻量版满足国产化需求,兼具高性能与低成本,适用于多种场景,推动数据库技术革新与发展。
|
6月前
|
存储 关系型数据库 分布式数据库

热门文章

最新文章

下一篇
日志分析软件