开发者社区> 中间件小哥> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

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

简介: 阿里巴巴 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 世杰。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
互联网时代研发效能的挑战及应对之道| 学习笔记
快速学习互联网时代研发效能的挑战及应对之道
0 0
8 年产品经验,我总结了这些持续高效研发实践经验 · 研发篇
在产研全链路流程上,协同最大的目标就是团队信息的透明化,即在清晰目标的指引下进行团队信息透明的日常研发工作,助力项目/产品成功发布。基于此,研发过程是否行之有效就成为我们关注的另一重点要素。通常「研发过程」是指:代码到制品再到部署上线的全链路,这个过程是持续集成的重中之重。
0 0
十年经验产品经理分享:如何搭建一个行之有效的“数据闭环”体系
打造数据闭环体系,就是要完成数据对于产品产生价值的闭环,让数据驱动产品增长。本文作者从数据闭环的概念出发,结合具体案例,从目标、洞察、迭代、落地这四个方面对搭建数据闭环体系的关键要点进行了分析讨论,一起来看看~
0 0
研发效能提升 36 计第一课:互联网时代研发效能的挑战和应对之道
《研发效能提升和敏捷实施 36 计》是阿里云联合 Teambition 打造的系列课程,课程将从团队和项目协作、需求分析和管理、以及业务创新、以及设计编码等 5 个方面,详细介绍研发效能提升的方法、实践和工具,并解析阿里巴巴的实践案例。
1043 0
研发管理难题如何破?云效打造强有力的阿里技术中台
云效(内部叫Aone)就是阿里的2万多名工程师和几万名员工协作沟通的工具,为了产品研发提供一个标准化的平台,覆盖从研发,到发布,再到日常运维的一站式平台,能够让开发同学通过这个平台,低成本的按照统一的流程进行研发活动,减少错误,提高效率。
2171 0
大咖带你了解技术团队效能动力模型
如何避免自己成为整个团队的瓶颈?如何让集体成为真正的团队?我们需要怎样的工程师?团队效能的未来在哪里?阿里云效邀请了阿里巴巴高级技术专家李云(花名至简),亲情讲解团队效能动力模型,破解团队瓶颈问题,让你真正了解团队效能。
2366 0
阿里巴巴中台架构的业务价值思考——走进《企业IT架构转型之道》系列1
架构无法决定市场的成功还是失败,但是作为土壤可以不断孵化新的物种。阿里巴巴从2008年开始的架构优化过程其实并没有解决该做什么的问题,但是解决了创新效率的问题。
6782 0
阿里B2B研发管理难题如何应对?打造强有力的技术中台
通常企业业务量增加之后,研发团队也会急剧扩张,这给研发管理带来了难度,原先那一套研发模式和管理,已然跟不上业务的发展。如何建设一套技术基础设施,去支撑更好、更高效的研发管理?
3899 0
阿里巴巴B2B业务高级技术专家傲野:传统软件测试的互联网化改造
7月19日,阿里巴巴B2B业务高级技术专家傲野,在【R&D summit】中国软件研发高峰论坛发表《传统软件测试的互联网化改造》主题演讲,从“互联网软件测试跟传统测试的区别”、“互联网化测试团队定位和价值”、“如何打造一支精英化测试团队”这三方面来讲述这些年在测试工作中的实践、思考和感触。满满干货,
2074 0
+关注
中间件小哥
阿里中间件(Aliware)官方账号
文章
问答
来源圈子
更多
阿里云中间件主要有包含这么几个: 分布式关系型数据库DRDS_水平拆分 做数据库扩展性的 、消息队列MQ 是做消息的中间件、企业级分布式应用服务EDAS 做分布式服务的、还有一些其他的中间件,比如配置服务、缓存等等。
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
研发效能提升36计-开篇:互联网时代研发效能的挑战及应对之道
立即下载
研发效能嘉年华:跨越敏捷——闲鱼敏捷转型之路
立即下载
阿里互联网研发团队的持续交付实践
立即下载