zoukankan      html  css  js  c++  java
  • 架构漫谈读后感

    架构漫谈读后感

    架构的产生,是为了让人们所做的工作能够更快捷的,更高效的完成。架构的分割,每一部分都是由人来实现的,每个人的能力有限,都有自己擅长或不擅长的领域,如果每个人都做自己擅长的领域,那么组合起来的成品无疑会更好。每个人的时间有限,把工作分割成不同的模块,每个人都做自己擅长的模块,无疑会节省很多时间。同时,人对系统会有更高的要求,否则,就不需要有架构了。

    所谓架构,就是根据要解决的问题,对目标系统的边界进行界定,并对目标系统按某个原则的进行切分。切分的原则,要便于不同角色,对切分出来的部分,并行或串行开展工作,一般并行才能减少时间。而且对这些切分出来的部分,设立沟通机制。根据这些沟通机制,使得这些部分之间能够进行有机的联系,合并组装为一个整体,完成系统的所有工作。

    架构解决的是人的问题,架构的切分,都是以人为基础的。我们要学会去理解问题的本质,了解问题需要解决的目的,学会与其他人沟通,很多时候问题的产生都是因为沟通的误解,或者主观上有很多不必要的利益诉求导致的。但是总还有一部分确实是有问题的,需要做调整,那么就必须要有所动作,做相应的调整。这个调整就是架构的切分。

    所谓软件,实际上,我们是把我们日常生活中所做的事情,包括我们自己本人都一
    起虚拟化到了计算机中。而人则演化成了,通过计算机的输入输出设备,控制计算机中的自己,来完成日常的工作,以及与其他人的沟通。也就是说,软件一直以来的动力,始终都是来模拟人和这个社会的。比如模拟大气运动(天气预报),模拟人类社会(互联网社交),模拟交易,包括现在正在流行的 VR,人工智能等等。模拟的对象越来越高级,难度越来越大。不管如何发展,模拟人的所有行为都是一个大的趋势。也就是说,软件的主要目的,还是把人类的生活模拟化,提供更低成本,高效率的新的生活。从这个角度来看,软件主要依赖的还是人类的生活知识。软件更多的是扮演一个 cost center,这也是为什么会出现很多的软件代工。

    什么是软件架构,这就是软件比较复杂的地方,涉及到软件本身的业务体系,和所虚拟的业务体系。根据以上的分析,所生成的架构,究竟那些算是软件架构呢?
    1. 软件因为流量增大而分拆成不同的运行单元,在不同的机器上部署所形成的架
    构,属于软件架构。
    2. 每个运行单元为了让不同角色的人,比如前端,业务,数据存储等能够并行工
    作,所分成的代码架构,也属于软件架构。
    所以当我们说软件架构的时候,我们一定要讲清楚,究竟说的是部署的架构,还是代
    码的架构。软件架构的落地,需要软件的组织架构和流程来保障,离开了这个,软件架构是一句空话。

  • 相关阅读:
    ELK 收集 K8S (containerd 容器运行时) 二
    EFK 收集 Docker 日志
    ELK 收集 Docker 日志
    ELK 收集 K8S (containerd 容器运行时) 三
    Java 基础(Stream APl)
    Java 基础(方法引用 Method References)
    Java 基础(Lambda表达式 和 函数式 Functional 接口)
    Java 基础(Stream APl) 二
    ELK 收集 K8S (containerd 容器运行时) 一
    部署 Harbor 2.4.1
  • 原文地址:https://www.cnblogs.com/love-xi/p/6506080.html
Copyright © 2011-2022 走看看