开发流程拆解与介绍|青训营笔记

47 阅读2分钟
  • 在需求阶段非常重要的一个道理,就是不要浪费时间去讨论那些不该存在的问题,就有些需求其实它从一开始就不合理,它就不应该存在,那我们其实再去围绕它设计我们的方案,然后去写甚至写代码,其实其都是在浪费时间。
  • 其实作为后端除了就是去阻止一些不应该存在的需求,我们还需要学会站在用户的角度去评估需求,就是我们除了去消除需求,做了减法,还要去想办法为用户做一些加法,就甚至是有些时候我们需要换一个角度去思考,还要提出一些需求。
  • 云原生的这种背景之下,我们的软件不再是运行在这个直接在机器上,虚拟机里面去运行的所有的容器其实是共享一个操作系统的,一个底层的操作系统,并用了一些技术手段。这些软件在一个系统里面虚拟出来了一个运行时,也就是所有的容器之间是相互隔离的,但是同时它又不会造成很大的开销。
  • 这就带来一个好处,就是如果你确定了你的应用写的代码,也确定了你的代码所依赖的底层的运行时,像Java的,还有是Python,然后这种东西可以打包成一个镜像去发布,所以说我们现在的开发其实是有更多的能力去掌控我们的运行环境的。
  • 这种模式其实是有一些好处的,就是模块和模块之间的调用,它不需要通过网络,然后在同一个进程里面可能就能够实现模块之间的一个串联。但是坏处就是可能不需要去扩容的模块,也要跟着扩容。那么什么微服务的思想又是什么呢?就是我们把每个模块都独立地拆分出来,把它们都拆到不同的服务里面,然后按照拆分的这个单个的服务可以对它们进行独立的扩容,还有缩容,这样的话各个功能其实是在不同的服务里面,然后每个人去开发的其实都只是一小部分自己负责的一个微服务,那这样,那就减少了让很多人去维护同一个代,然后也会带来可以更精确的扩缩容这样一个好处。