《系统架构设计师教程(第2版)》第12章-信息系统架构设计理论与实践-02-信息系统架构

文章目录

  • 1. 概述
    • 1.1 信息系统架构(ISA)
    • 1.2 架构风格
  • 2. 信息系统架构分类
    • 2.1 信息系统物理结构
      • 2.1.1 集中式结构
      • 2.1.2 分布式结构
    • 2.2 信息系统的逻辑结构
      • 1)横向综合
      • 2)纵向综合
      • 3)纵横综合
  • 3. 信息系统架构的一般原理
  • 4. 常用4种架构模型
    • 4.1 单机应用模式 (Standalone)
    • 4.2 客户机/服务器 (Client/Server) 模式
      • 4.2.1 两层 C/S
      • 4.2.2 三层 C/S 结构
      • 4.2.3 三层 B/S 结构
      • 4.2.4 多层C/S 结构
        • 1) 四层C/S结构
        • 2)中间件层的作用
      • 4.2.5 MVC
    • 4.3 面向服务架构 (SOA) 模式
      • 4.3.1 概述
      • 4.3.2 Web Service
    • 4.4 企业数据交换总线
  • 5. 企业信息系统的总体框架
    • 5.1 战略系统
    • 5.2 业务系统
      • 1)概念
      • 2)组成
      • 3)企业业务过程重组
      • 4)业务系统的作用
    • 5.3 应用系统
    • 5.4 企业信息基础设施

1. 概述

1.1 信息系统架构(ISA)

  • Information System Architecture
  • ISA模型应该是多维度,分层次、高度集成化的模型

1.2 架构风格

这一部分回看《第7章-系统架构设计基础知识-03-软件架构风格》

2. 信息系统架构分类

2.1 信息系统物理结构

按照信息系统硬件在空间上的拓扑结构分类:

2.1.1 集中式结构

  • 概念:
    • 指物理资源在空间上集中配置
  • 举例:
    • 早期的单机系统
    • 通过终端共享资源组成的多用户系统 (即使用户分布在不同地点)
  • 优点:资源集中,便于管理,资源利用率较高
  • 缺点:
    • 大规模系统,集中式结构的维护与管理困难
    • 不利于用户发挥在信息系统建设过程中的积极性与主动性
    • 系统脆弱,一旦主机出现故障,就会使整个系统瘫痪

2.1.2 分布式结构

  • 分布式系统
    • 指通过计算机网络把不同地点的计算机硬件、软件、数据等资源联系在一起,实现不同地点的资源共享
    • 既可以在网络系统的统一管理下工作,也可以利用本地资源独立运作
    • 已经成为信息系统的主流模式
  • 分类:
    • 一般分布式
      • 服务器只提供软件与数据的文件服务
      • 各计算机系统根据规定的权限存取服务器上的数据文件与程序文件
    • 客户机/服务器模式
      • 客户机:用户通过客户机向服务器提出服务请求
      • 服务器:根据请求向用户提供经过加工的信息
  • 优点:
    • 可以根据应用需求来配置资源,提高信息系统对用户需求与外部环境变化的应变能力
    • 系统扩展方便
    • 安全性好,某个结点所出现的故障不会导致整个系统停止运作
  • 缺点:系统管理的标准不易统一,协调困难,不利于对整个资源的规划与管理。

2.2 信息系统的逻辑结构

  • 在信息系统开发中,必须强调各子系统之间的协调一致性和整体性
  • 对子系统统一规划,并对各子系统进行综合:

1)横向综合

  • 概念:将同一管理层次的各种职能综合在一起

如:将运行控制层的人事和工资子系统综合在一起,使基层业务处理一体化。

2)纵向综合

  • 概念:把某一职能的各层次业务组织在一起,从而沟通上下级之间的联系

如工厂的会计系统和公司的会计系统综合在一起

3)纵横综合

  • 概念:
    • 从信息模型和处理模型两个方面来进行综合,做到信息集中共享,程序尽量模块化,
    • 提取通用部分,建立系统公用数据库和统一的信息处理系统。

3. 信息系统架构的一般原理

  • 其架构包括两部分:组成成分、成分之间的关系
  • 分析出相对稳定的组成成分和成分之间的关系
  • 在相对稳定部分的支持下,对相对变化较多的部分进行重新组织,以满足变化的要求
  • 以上,使得信息系统对环境的变化具有一定的适应能力(即,有一定柔性)

4. 常用4种架构模型

4.1 单机应用模式 (Standalone)

  • 概念:指运行在一台物理机器上的独立应用程序

4.2 客户机/服务器 (Client/Server) 模式

4.2.1 两层 C/S

  • 概念:
    • 即,胖客户端模式
    • 前台客户端+后台数据库管理系统

      将前台界面与相关的业务逻辑处理服务集成在一个可运行单元中

在这里插入图片描述

4.2.2 三层 C/S 结构

  • 结构如图所示:
    在这里插入图片描述

  • 前台界面送往后台的请求

    • 数据库存取操作
    • 其它需要处理的业务逻辑
  • 前台界面与后台服务之间的协议

    • 基于 TCP/IP协议
      • 只适合需求与功能简单的小型系统
    • 自定义的消息机制
      • 大型分布式系统
    • 基于 RPC编程
    • 基于 CORBA/IIOP协议
    • 基于 Java RMI
    • 基于 J2EE JMS
    • 基于HTTP协议

    HTTP 不是面向对象的结构,面向对象的应用数据会被首先平面化后进行传输。

4.2.3 三层 B/S 结构

在这里插入图片描述

  • 概念:
    • Brower/Server模式,即,浏览器/服务器模式
  • 优点:通用的、低成本的浏览器节省了客户端软件的开发和维护费用

4.2.4 多层C/S 结构

1) 四层C/S结构
  • 前台界面(如浏览器)
  • Web 服务器
  • 中间件(或应用服务器)
  • 数据库服务器
    在这里插入图片描述
2)中间件层的作用
  • 提高系统可伸缩性,增加并发性能

Wcb服务器可处理的并发请求数 在中间件层得到进一步的扩展,从而提高系统整体并发连接数。

  • 完成请求转发或应用逻辑处理

中间件的这种作用在J2EE 的多层结构中比较常用,如 BEA WebLogic、IBM WebSphere等提供的EJB容器,就是专门用以处理复杂企业逻辑的中间件技术组成部分。

  • 增加数据安全性

Web服务器暴露给客户,中间件隔离 Web服务器对企业数据库的连接

4.2.5 MVC

《第13章-层次式架构设计理论与实践-02-表现层框架设计》中会系统介绍,这里可以先随便了解一下。

  • 概念
    • Model-View-Controller
    • 是上述多层 C/S 结构的一种标准化模式
  • 结构
    • 视图模型分开
    • 控制器连接不同的模型和视图,以完成用户的需求
    • 控制器与视图通常处于Web服务器层
    • 模型层决定了MVC是三层结构还是四层结构
      • 三层结构:只包含数据层
      • 四层结构:分为逻辑层、数据层

在这里插入图片描述

  • 如,J2EE架构
    • View :指浏览器层,用于图形化展示请求结果
    • Controller控制器:指Web服务器层
    • Model 模型层:指应用逻辑实现及数据持久化的部分

4.3 面向服务架构 (SOA) 模式

C/S软件结构都只是一个单结点应用,多服务结构也是一种信息系统常用的架构模式。

4.3.1 概述

  • 概念:
    • Service Oriented Architecture
    • 本质是消息机制或远程过程调用 (RPC)
  • 服务:提供一组整体功能的独立应用系统
  • 独立应用系统:应用中去掉任何一层都将不能正常工作,对外可以是一个提供完整功能的独立应用
  • 应用件的消息通信
    • 通过消息通信
    • 互相调用对方的内部服务、模块
    • 数据交换
    • 实践中通常使用中间件、交易中间件
  • 分类:
    • 异构系统集成
    • 同构系统聚合
    • 联邦体系结构

4.3.2 Web Service

  • 概念
    • 是SOA的一个最典型、最流行的应用模式
    • 两个互联网应用之间可以相互向对方开放一些内部服务
      • 其开发协议主要有 SOAP与 WSDL
  • 区别与普通SOA
    • Web应用为主
    • 开放一些内部服务,而不像传统SOA有更加丰富的应用类型

4.4 企业数据交换总线

在这里插入图片描述

  • 概念:不同的企业应用之间进行信息交互

  • 适用范围:大型企业

    • 如:银行、电信等信息化程度较高的企业
  • 本质:一个称之为连接器的软件系统 (Connector)

    • 构建:
      • 基于中间件: (如,消息中间件、交易中间件)
      • 基于CORBA/IIOP协议
    • 主要功能:是按照预定义的配置或消息头定义,进行数据、请求、回复 的接收与分发

以下两段看一下即可:

从理论上来讲,企业数据交换总线可以同时具有实时交易与大数据量传输的功能,但在实践中,成熟的企业数据交换总线主要是为实时交易而设计的,而对可靠的大数据量级传输需求往往要单独设计。

如果采用 CORBA 为通信协议,交换总线就是对象请求代理 (ORB), 也被称之为“代理 (Agent) 体系”。另外,在交换总线上挂接的软件系统,有些也可以实现代理的功能,各代理之间可以以并行或串行的方式进行工作,通过挂接在同一交换总线上的控制器来协调各代理之间的活动。

5. 企业信息系统的总体框架

在这里插入图片描述

  • 战略系统

    • 位置:第一层(战略管理层)
    • 功能:
      • 向业务系统提出重组的要求
      • 向应用系统提出集成的要求
  • 业务系统

    • 位置:第二层(战术管理层)
    • 作用:通过业务处理流程的优化,对企业进行管理控制、业务控制
  • 应用系统

    • 位置:第二层(战术管理层)
    • 应用系统:为业务系统提供计算机实现的手段,以提高企业的运行效率
  • 信息基础设施:

    • 位置:第三层(运行管理层)
    • 作用:
      • 是企业实现信息化的基础部分
      • 为应用系统和战略系统提供数据支持
      • 技术上和管理上,为企业的业务系统实现重组提供了一个有效的、灵活响应的支持平台

信息系统体系结构总体参考框架的四个部分组成

5.1 战略系统

  • 概念:
    • 指企业中与战略制定、高层决策有关的管理活动和计算机辅助系统。
  • 组成:
    • 以计算机为基础的高层决策支持系统
    • 企业的战略规划体系
  • 设立战略系统有两重含义
    • 表示信息系统对企业高层管理者的决策支持能力
    • 表示企业战略规划对信息系统建设的影响和要求
  • 企业战略规划
    • 长期规划:
      • 较稳定
      • 如,调整产品结构
    • 短期规划
      • 根据长期规划的目标来制定
      • 易改变:根据环境、企业运作情况改变
      • 如:决定新产品的类型

5.2 业务系统

1)概念

  • 概念:指企业中完成一定业务功能的各部分所组成的系统
    • 其组成部分可以是:物质、能量、信息、人

2)组成

业务系统 《== 业务过程 《= = 业务活动

  • 业务系统:

    • 如:生产系统、销售系统、采购系统、人事系统、会计系统等
    • 由一些业务过程完成其功能

    如:会计系统,包括应付账款、应收账款、开发票、审计等业务过程

  • 业务过程:

    • 可以分解成一系列逻辑上相互依赖的业务活动
  • 业务活动

    • 完成有先后次序
    • 每个业务活动都有执行的角色,并处理相关数据

3)企业业务过程重组

  • 概念
    • Business Process Reengineering
    • 以业务流程为中心
    • 打破企业的职能部门分工
    • 对现有的业务过程进行改进或重新组织
  • 目的:
    • 改善生产效率、成本、质量、交货期等,以提高企业的市场竞争力

4)业务系统的作用

  • 对企业现有业务系统、业务过程、业务活动进行建模
  • 在企业战略的指导下,进行业务过程优化重组
  • 对重组后的业务领域、业务过程、业务活动进行建模,以确定出相对稳定的数据
  • 以此相对稳定的数据为基础,进行企业应用系统的开发和信息基础设施的建设

5.3 应用系统

  • 概念:信息系统中的应用软件部分
  • 按和用户关系分类:
    • 系统软件
    • 支持性软件
    • 应用软件
  • 按功能分:
    • 事务处理系统(TPS)
    • 管理信息系统(MIS)
    • 决策支持系统(DSS)
    • 专家系统(ES)
    • 办公自动化系统(OAS)
    • 计算机辅助设计(CAD)、计算机辅助工艺设计(CAPP)、计算机辅助制造(CAM)系统
    • 制造资源计划系统(MRPII)
  • 架构的角度的基本组成:
    • 内部功能实现部分
      • 处理数据部分变化较小
      • 算法和控制结构变化较多
    • 外部界面部分:变化较多

5.4 企业信息基础设施

  • 概念:
    • Enterprises Information Infrastructure
    • 指根据企业当前业务和可预见的发展趋势,及对信息采集、处理、存储和流通的要求
    • 构筑由信息设备、通信网络、数据库、系统软件和支持性软件等组成的环境
  • 企业信息基础设施组成:
    • 技术基础设施:
      • 包括:计算机、网络、系统软件、支持性软件、数据交换协议等
      • 变化因素较多、完成同一功能有多种实现方式
    • 信息资源设施:
      • 包括:数据与信息本身、数据交换的形式与标准、信息处理方法等
      • 变化较小
    • 管理基础设施:
      • 包括:企业中信息系统部门的组织结构、信息资源设施管理人员的分工、企业信息基础设施的管理方法与规章制度等
      • 变化较多

    注意:以上三部分都有相对稳定的部分和相对易变的部分


在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/47875.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Pandas教程:近万字讲解在Pandas中如何操作Excel

目录 1. 安装与配置 2. 读取Excel文件 2.1 基本用法 2.2 指定工作表 2.3 指定单元格范围 3. 数据检查与预处理 3.1 查看数据的基本信息 3.2 数据类型检查与转换 3.3 检查缺失值 3.4 处理缺失值 4. 数据清洗与转换 4.1 重命名列 4.2 删除重复数据 4.3 数据替换 4…

Android使用ANativeWindow更新surfaceView内容最简Demo

SurfaceView简介 SurfaceView对比View的区别 安卓的普通VIew,都依赖于当前Activity的Window的surface,这个surface用于承载view树从底到顶绘制出来的所有内容,因此任何一个view需要更新时,都需要把所有view中底到顶进行更新,即使使…

解决:Linux上SVN 1.12版本以上无法直接存储明文密码

问题:今天在Linux机器上安装了SVN,作为客户端使用,首次执行SVN相关操作,输入账号密码信息后,后面再执行SVN相关操作(比如"svn update")还是每次都需要输入密码。 回想以前在首次输入…

Python进阶(4)--正则表达式

正则表达式 在Python中,正则表达式(Regular Expression,简称Regex)是一种强大的文本处理工具,它允许你使用一种特殊的语法来匹配、查找、替换字符串中的文本。 在这之前,还记得之前我们是通过什么方法分割…

实习问题总结

为什么使用GRPC作为通信方式,对比如REST好处在哪里? 使用protobuf作为序列化格式,以二进制进行传输,减小了数据包的大小,效率高 proto强类型定义、支持复杂数据类型,编译运行可以进行严格的数据验证&#…

[论文笔记] pai-megatron-patch Qwen2-CT 长文本rope改yarn

更改: # Copyright (c) 2024 Alibaba PAI and Nvidia Megatron-LM Team. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License a…

【系统架构设计】数据库系统(二)

数据库系统(二) 数据库模式与范式数据库设计数据库设计的方法数据库设计的基本步骤 事务管理并发控制故障和恢复 备份与恢复分布式数据库系统数据仓库数据挖掘NoSQL大数据 数据库模式与范式 数据库设计 数据库设计的方法 目前已有的数据库设计方法可分…

element UI :el-table横向列内容超出宽度,滚动条不显示问题

是否能解决你问题的前提 **看到这篇文章的解决问题的方案之前,请先回忆你是否在项目中的全局样式或者私有组件中去单独设置过滚动条样式。如果有 请继续往下看:**单独设置过滚动条样式代码实例: ::-webkit-scrollbar {/*滚动条整体样式*/wi…

layui 让table里的下拉框不被遮挡

记录:layui 让table里的下拉框不被遮挡 /* 这个是让table里的下拉框不被遮挡 */ .goods_table .layui-select-title,.goods_table .layui-select-title input{line-height: 28px;height: 28px; }.goods_table .layui-table-cell {overflow: visible !important; }.…

H-Instructions Substring(牛客暑期第二场)

题意:刚开始red站在初始位置(0,0),她有一串指令:向上,向下,向左,向右(上将y,下将y--,左x--,右x),可以选择连续…

【Gitlab】记一次升级 Gitlab 后 API 失效的问题

背景 前段时间,因内部使用的 Gitlab 版本存在漏洞,需要进行升级,于是乎,将 Gitlab 从 16.6.0 升级到 16.11.3。而我们项目有个接口是用于获取 Gitlab 上的开发人员。 然后,今天,突然发现这个接口获取不到…

【Django】网上蛋糕项目商城-注册,登录,修改用户信息,退出功能

概念 通过以上多篇文章的讲解,对该项目的功能已经实现了很多,本文将对该项目的用户注册,登录,修改用户信息,以及退出等功能的实现。 注册功能实现 点击head.html头部页面的注册按钮,触发超链接跳转至use…

十一、集合操作

一、集合定义 语法 创建集合使⽤ {} 或 set() 功能 集合可以去掉重复数据;集合数据是⽆序的,故不⽀持下标 s1 set(eqweqwe) s2 {} s3 {10, 20, 30, 40, 50} s4 {"name":"xuxu"} print(s1) print(type(s1)) print(type(s2)) pri…

[Python][自然语言]利用NLTK建立自己的情感分析模型

文章目录 相关python模块步骤一:准备自己的训练数据步骤二:读取并处理数据步骤三:特征提取步骤四:训练机器学习模型步骤五:部署模型相关python模块 pip install pandas pip install scikit-learn pip install nltk 当前使用版本 Python 3.10.12 scikit-learn 1.2.2 pand…

操作系统发展简史(Unix/Linux 篇 + DOS/Windows 篇)+ Mac 与 Microsoft 之风云争霸

操作系统发展简史(Unix/Linux 篇) 说到操作系统,大家都不会陌生。我们天天都在接触操作系统 —— 用台式机或笔记本电脑,使用的是 windows 和 macOS 系统;用手机、平板电脑,则是 android(安卓&…

Symfony数据库抽象层:深入理解其工作原理

在现代Web应用开发中,数据库是不可或缺的一部分。Symfony框架提供了一个强大且灵活的数据库抽象层(DBAL),使得开发者能够轻松地与各种类型的数据库进行交互。本文将深入探讨Symfony数据库抽象层的工作原理,并展示一些示…

来聊聊去中心化Redis集群节点如何完成通信

写在文章开头 今天我们来聊点有意思的,关于redis中集群间通信的设计与实现,本文将从源码的角度分析redis集群节点如何利用Gossip协议完成节点间的通信与传播,希望对你有帮助。 Hi,我是 sharkChili ,是个不断在硬核技术…

ARM/Linux嵌入式面经(十六):蔚来嵌入式一二三面面经

文章目录 static作用,局部static和全局static区别TCP三次握手Linux虚拟内存指针引用区别C++内存分区new/delete和malloc/free区别职业规划为什么选择蔚来介绍一下项目然后问我有没有内核级别开发经验,我说没有什么情况进入内核态一、主动式二、被动式三、其他方式注意事项示例…

MAVSKD-Java开源库mavsdk_server库macOS平台编译

1.下载源码 2.使用IDEA打开,进行mavsdk_server目录,使用gradle进行编译 3.开始编译时会自动下载依赖 4.下载完成后,会自动编译 5.编译成功 6.成功生成AAR文件

2024算力基础设施安全架构设计与思考(免费下载)

算网安全体系是将数据中心集群、算力枢纽、一体化大数据中心三个层级的安全需求进行工程化解耦,从国家安全角度统筹设计,通过安全 服务化方式,依托威胁情报和指挥协同通道将三层四级安全体系串联贯通,达成一体化大数据安全目标。 …