什么是架构
架构实际上就是指人们根据自己对世界的认识,为解决某个问题,主动的、有目的地区识别问题,并进行分解、合并、解决这个问题的实践活动。
架构的产出物,自然就是对问题的分析,以及解决问题的方案:包括拆分的原则以及理由,沟通合并的原则以及理由,以及拆分,拆分出来的各个部分和合并所对应的角色和所需要的核心能力等。
认识概念是理解架构的基础
识别问题
识别问题的一个最大的前提就是要搞清楚:是谁的问题。随后可以确定问题的边界。
找出问题的主体,是做架构的首要问题。
架构切分
1.架构的切分的导火索是人的负载太重。
2.架构的切分实际就是对利益进行切分或合并,使得每个的权责是对等的,每个可以为自己的利益负责。
3.架构切分的最终结果都会体现在组织架构上,只有这样才能够让架构落地并推进。
4.架构切分的结果一定是一个树状,这也是为什么会产生分层。层数越多沟通越多,效率越低,分层要越少越好。尽可能变成一颗平衡树,才能让整个系统的效率最大化。
软件架构到底是要解决是什么问题
问题的主体是谁, 解决的是什么问题,如何解决,如何运作。
提升业务效率,降低业务成本,把业务虚拟化,解决软件开发和运营的生命周期等方面。
软件架构
软件因为流量增大而分拆成不同的运行单元,在不同的机器上部署所形成的架构,属于软件架构。
每个运行单元为了让不同角色的人并行工作,也属于软件架构。
软件架构师
权利:架构师是一个组织的领导人,有权利调动这个组织的架构,才能够更好的发挥架构师的作用,更好的把利益的调整到实处 。
义务:架构师必须超越对时间的恐惧,也就是说必须具备一定程度的自信,去真正的发现问题的主体。识别真正的问题,并把这个行为变成自己的,面对问题的第一反应。