我们总结了每个技术团队都会遇到的 4 个难题

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 阿里巴巴 2019 年实习生校园招聘已经启动,为此,我们整理了一篇《每个技术团队都会遇到的4个难题》,帮助即将从校园进入公司实习的后端程序员,以实践的视角,看看一个后端技术团队会遇到的一些难题。虽然,技术上的难题远不止于此,但如果能从这篇文章中获得一些职业体感,也许对你的实习面试会有所帮助。

阿里巴巴 2019 年实习生校园招聘已经启动,为此,我们整理了一篇《每个技术团队都会遇到的4个难题》,帮助即将从校园进入公司实习的后端程序员,以实践的视角,看看一个后端技术团队会遇到的一些难题。虽然,技术上的难题远不止于此,但如果能从这篇文章中获得一些职业体感,也许对你的实习面试会有所帮助。

参与“测测你的程序员属性”,有机会获得 Cherry 樱桃机械键盘、罗技鼠标等奖品。

- 正文开始 -

从单个应用到多个应用,从百千级别的访问流量到十万、百万级别,从两三个人的创业技术团队到上千人的技术团队矩阵,这些过程中,技术团队都避不开了以下 4 个问题:

  • 如何预测业务峰值时的容量
  • 如何提升业务的稳定性
  • 如何提高业务的监控能力
  • 如何提高开发效率

如何预测业务峰值时的容量

早期的做法是在开发测试环境进行压测,来评估线上容量,但线下环境的机器规模,和线上差距很大,很难通过线下推导线上。根据经验,将采购的机器加入不同的应用里面,这时候就会遇到一个问题: 最大业务峰值容量是多少?

_
这个问题,其实挺难回答的。这个应用多加几台,那个应用少加几台,整体的业务峰值承受能力就会不一样,加减的规则很难通过人的经验来确定,最多只能作为一些辅助判断。另外,核心交易链路的梳理,也是一个体力活,如果依赖人为处理,有可能会漏掉一些看起来不那么重要的”分支”,这是整个容量不确定的地方,可变的因子很多。

比较有效的方式, 是在生产系统部署全链路压测,来验证各个生产环节是否能经受住各类流量的访问,让真实的流量来访问生产环境,实现全方位的真实业务场景模拟,确保各个环节的性能、容量和稳定性均可做到万无一失。

如何提升业务的稳定性

日常的各种运营活动,都有可能带来巨大的流量高峰,除了通过引入全链路压测来验证各个生产环节是否能经受住各类流量的访问, 构建系统的高可用保障能力也很关键,涉及多个组件或模块,例如软负载和配置中心、服务接入和调度编排、消息接收和发送、容器和调度、限流和降级 等。

_
运营一次活动,最大的流量峰值是可以预测的,这就是服务的最大接待能力,比如50万笔的交易创建峰值,那超过的怎么办?这时候,采用限流的方式,被限流的客户在某一段时间内无法进行购物,一旦系统恢复服务能力,就可以继续服务被限流的客户,从而避免因流量超过上限,而影响整个平台的客户。

如何提高业务的监控能力

分布式应用系统在协作性,扩展性和一定的容错性方面,体现出了优势,但是在监控、运维和诊断层面,面临相当大的挑战。

_3

早期,架构师可以画出整个应用系统的交互架构图,随着业务的发展,当拥有大量的应用、微服务和容器,即便整理了一幅交互架构关系图,也会因为应用系统的变更,新需求的实现,整个应用系统的交互又会发生变化,这种变化无处不在,每天都在发生。因此,随着业务量的增加,需要覆盖面广且深的全链路跟踪监控系统 ,来诊断调用链的问题。

越是复杂的业务形态,定位的难度越大,就越需要全方位、360度无死角的监控,因此,建立一个平台化、跨领域和立体化的监控,能极大的缩短业务遇到问题时的恢复时间。

如何提高开发效率

开发效率是一个很广泛的话题。不同的开发岗位,不同的使用场景,会有不一样的开发效率工具。这里,我们介绍几款后端工程师经常会用到的效率工具。

_2

  • 云端部署效率工具:

Cloud Toolkit 是一款 IDE插件,可以帮助开发者更高效地开发、测试、诊断并部署应用。借助这个工具,开发者能够方便地将本地应用一键部署到任意机器,或 ECS、EDAS、Kubernetes,并支持高效执行终端命令和 SQL 等。点此了解详情。

  • MacOS 搜索利器:

MacOS 自带的聚焦搜索(Spotlight),可以将文稿、邮件、应用等整合在一起,通过关键词匹配来进行搜索。Alfred 可以看作是Spotlight的增强版,是计算机依赖者的效率神器,支持添加自定义网络搜索引擎,指定规则精准定位本地文件,以及在命令框内使用计算器、词典等实用工具。

  • 画图效率工具:

系统架构图是为了抽象的表示软件系统的整体轮廓和各个组件之间的相互关系和约束边界,以及软件系统的物理部署和软件系统的演进方向的整体视图。通过架构图,可以让干系人理解、遵循架构决策,就需要把架构信息传递出去。架构图就是一个很好的载体,所谓一图胜千言。点此了解详情。

  • JSON 浏览效率插件

对于 JSON 的数据,如果不编排,格式查看起来会很费劲。JSON-handle 是一款对 JSON 格式的内容进行浏览和编辑,以树形图样式展现 JSON 文档的插件,支持实时编辑。

  • Java 代码规约扫描效率插件

这是一款 Java 代码规约扫描工具,旨在以工具的手段进行代码规约的落地,项目包含三部分:PMD规则实现、IntelliJ IDEA 插件、Eclipse 插件,帮助开发人员在工程研发的多个阶段进行代码规约检查, 降低故障率、提升编码效率和质量。点此了解详情。

当然,除了这些现成的效率工具,提升整个技术团队的开发效率,需要单独开发或改造一些系统,例如团队协作平台、服务化改造等,当你以实习生的身份加入公司后,若有机会参与到这些提升开发效率的项目过程中。由此形成的效率意识,将会影响到你今后的工作习惯和理念。

本文部分内容来源于阿里巴巴中间件资深产品专家丹臣的内部分享《阿里巴巴中间件上云实践》。阿里巴巴中间件的实习生招聘详情,请查看本期推文的第三篇。

互动

扫码参与


H5_1

创意 by 岚杺,插画 by 凌风,前端 by 子林,动画 by 世杰。

相关文章
|
运维 大数据 Devops
研发管理难题如何破?云效打造强有力的阿里技术中台
云效(内部叫Aone)就是阿里的2万多名工程师和几万名员工协作沟通的工具,为了产品研发提供一个标准化的平台,覆盖从研发,到发布,再到日常运维的一站式平台,能够让开发同学通过这个平台,低成本的按照统一的流程进行研发活动,减少错误,提高效率。
3750 1
|
7月前
|
数据采集 数据挖掘 BI
数据研发“新人”如何快速落地?
本文将以“如何快速落地”、“快速适应新环境”为出发点,探讨数据研发“新人”如何快速了解公司业务、领域模型和业务系统,然后快速高效的推进相关工作,赢得合作伙伴的信任和支持。
40967 36
《研发效能嘉年华:跨越敏捷——闲鱼敏捷转型之路》电子版地址
研发效能嘉年华:跨越敏捷——闲鱼敏捷转型之路
98 0
《研发效能嘉年华:跨越敏捷——闲鱼敏捷转型之路》电子版地址
|
存储 云安全 人工智能
有多难?直击传统行业的“云上再创业”之路
有多难?直击传统行业的“云上再创业”之路
509 0
有多难?直击传统行业的“云上再创业”之路
|
运维 供应链 安全
互联网时代研发效能的挑战及应对之道| 学习笔记
快速学习互联网时代研发效能的挑战及应对之道
150 0
互联网时代研发效能的挑战及应对之道| 学习笔记
|
SQL 存储 DataWorks
浅谈-大数据工程师面临的困境和要学习的技术
读书的时候,语文老师总会让同学看看作者的生平简介,谈谈作者为什么会写出这篇文章,文章诞生的背景是什么背景,一方面是让同学理解文章,另外一方面是让同学感同身受。 鄙人,不是大厂,也不算外包,算是靠在阿里系的一家创业公司的交付部门的小小大数据工程师,心比天高,命比纸薄。 当然,也和上学没有好好学习有关系,怨不得其他人。 回到正题,咋们先从我的个人经历聊一下大数据工程师现在面临的困境和我的一些解决思路。
251 0
|
消息中间件 运维 Kubernetes
云原生落地大爆发,企业和开发者如何把握先机?
回顾 2021 年,云原生有哪些重大技术突破?云原生时代下开发模式、技术标准等不断变化,企业应该如何落地云原生?开发者应掌握哪些能力?本文将为你一一解说。
云原生落地大爆发,企业和开发者如何把握先机?
|
数据采集 移动开发 监控
十年经验产品经理分享:如何搭建一个行之有效的“数据闭环”体系
打造数据闭环体系,就是要完成数据对于产品产生价值的闭环,让数据驱动产品增长。本文作者从数据闭环的概念出发,结合具体案例,从目标、洞察、迭代、落地这四个方面对搭建数据闭环体系的关键要点进行了分析讨论,一起来看看~
十年经验产品经理分享:如何搭建一个行之有效的“数据闭环”体系
|
持续交付
研发效能提升 36 计第一课:互联网时代研发效能的挑战和应对之道
《研发效能提升和敏捷实施 36 计》是阿里云联合 Teambition 打造的系列课程,课程将从团队和项目协作、需求分析和管理、以及业务创新、以及设计编码等 5 个方面,详细介绍研发效能提升的方法、实践和工具,并解析阿里巴巴的实践案例。