• 《一线架构师实践指南》第三章阅读笔记


    从概念架构到细化架构,先设计概念架构,构思关键问题的解决策略;在进行细化架构的设计,保证为开发提供足够的指导和限制被人们广泛使用
    之所以需要细化架构,是因为概念架构难以支持并行开发。

      细化架构的方法:RUP 4+1多视图方法(逻辑架构,开发架构,物理架构,数据架构,运行架构(与之对应的要写概要设计文档))

      多视图方法要求“兼顾多个视图设计之间的一致性”。例如:要考虑职责、程序单元、部署节点等要素之间的相互影响。

      多视图方法的实际意义:利于思考(因为分而治之的思维方式);便于交流(因为在一定程度上分离了涉众关注点)

      多视图方法不是OO方法(Object-Oriented Method,面向对象方法,面向对象的方法)分支。无论是OO方法,还是结构化方法,都远未涵盖架构设计的全部。

      逻辑架构和物理架构不是两个阶段,而是同一阶段的要考虑的两个方面,即两个视图。

    用5视图方法梳理架构:

     

     

     5视图方法包含视图和其”思维立足点“:

      逻辑视图(职责划分)

      开发视图 (程序单元组织)

      运行视图(控制流阻止)

      物理视图(物理节点安排)

      数据视图(持久化设计)

    逻辑架构中划分子系统的三种策略

    • 分层的细化

       

    • 分区的引入

        架构中引入分区,是为了支持深度优先的迭代开发。分区是一种单元,位于某个层的内部,其粒度比层要小。 

    • 机制的提取

        基于接口或抽象类的协作是机制,基于具体类的协作则算不上是机制

        

    子系统划分需要分层细化、分区引入、机制提取三种策略综合运用,三管齐下。

    划分子系统的 4个重要原则:

      职责分离原则;

      通用专用分离原则;

      技能分离原则;

      工作量均衡原则。 

    物理架构

      3项任务:

        硬件选择与物理拓扑

        软件到硬件的映射关系

        方案的优化

    运行架构

      工作内容:

        确定引入哪些控制流,确定每条控制流的任务,处理相关问题:控制流的创建、销毁、通信机制等以便进一步考虑:控制流之间的同步关系,若有资源争用还要引入加锁机制

      其中控制流图是关键,在实践中,最常用于实现控制流的手段有3种:进程,线程,中断服务程序。

    开发架构

      工作内容:

        将“逻辑职责”映射为“程序单元”;开发技术选型;“程序单元”间关系。

    数据架构

      难点:数据分布

      数据分布的六种策略:

        独立 Schema( Separate-schema)

        集中( Centralized)

        分区( Partitioned)

        复制( Replicated)

        子集( Subset)。

        重组( Reorganized)

      数据分布策略的三条应用原则:

        把握系统特点,确定分布策略(合适原则)

        不同分布策略,可以综合运用(综合原则)

        从“对吗”、“好吗”两方面进行评估优化(优化原则)

    参考博文:https://www.cnblogs.com/janeszj/p/12661533.html

  • 相关阅读:
    2018杭州初雪
    李宗盛
    张爱玲(句子迷)
    RFBnet论文笔记
    AXI总线简介、ID分析、DMA、Vivado烧录、系统集成
    axi总线之零:概述
    怎么理解 Redis 事务?
    Redis 集群最大节点个数是多少?
    怎么测试 Redis 的连通性?
    Redis 集群如何选择数据库?
  • 原文地址:https://www.cnblogs.com/yuanxiaochou/p/12672485.html
Copyright © 2020-2023  润新知