• 阅读笔记之——《架构漫谈》一


    关于架构的缘起,有一句关于big data流行的笑话:

    Architecture is like teenage sex,everybody talks about it,nobody really knows what is it.

    架构的英文是 Architecture,在Wikipedia(一开始我也不晓得,换个词就明白了:维基百科)上,架构是这样定义的:

    Architecture is both the process and the product of planning,designing,and constructing buildings and other physical structures.

    那么如何用中文定义架构 Architecture 呢?

    把一个整体(完成人类生存的所有工作)切分成不同的部分(分工),由不同角色来完成这些分工,并通过建立不同部分相互沟通的机制,使得这些部分能够有机的结合为一个整体,并完成这个整体所需要的所有活动,这就是架构。

    由此,可以归纳出架构产生的五大动力:

    ①、必须由人执行的工作(不需要人介入,就意味着不需要改造,也就不需要架构了)

    ②、每个人的能力有限(每个人都有自己的强项,个人的产出受限于最短板,并且由于人的结构限制,同时只能专注于做好一件事情,比如虽然有两只眼睛,但是只能同时专注于一件事物,有两只手,无法同时做不同的事情。ps. 虽然有少部分人可以左手画圆右手画框,但这不是普遍现象)

    ③、每个人的时间有限(为了减少时间的投入,必然会导致把工作分解出去,给擅长于这些工作的角色来完成,从而缩短时间)

    ④、人对目标系统有更高的要求(如果满足于现状,也就不需要进行架构了)

    ⑤、目标系统的复杂性使得单个人完成这个系统,满足条件2、3(如果个人就可以完成系统的提高,也不需要别的人参与,也就不需要架构的涉及,只是工匠,并且一般这个工作对时间的要求也不迫切。当足够熟练之后,也会有一定的架构思考,但考虑更多的是如何提高质量,提高个人的时间效率)

    所以:当着5个条件同时成立,一定会产生架构。

    根据原文的最终总结,可以精化如下:

    1、界定系统边界

    2、切分系统(并行或串行开展工作,一般并行才能减少时间。)

    3、建立沟通机制

    4、有机整合,高效完成工作

    原文有一句话很好,作为本片笔记的结尾:

    合久必分,分久必合

  • 相关阅读:
    004.Docker镜像管理
    001.Heartbeat简介
    005.Docker存储管理
    006.Docker网络管理
    012.Docker仓库管理
    013.Docker私有仓库多Harbor同步部署
    007.基于Docker的Etcd分布式部署
    008.Docker Flannel+Etcd分布式网络部署
    009.Docker Compose部署及基础使用
    002.Open-Falcon Server部署及Agent监控
  • 原文地址:https://www.cnblogs.com/mitang0-0/p/12324114.html
Copyright © 2020-2023  润新知