应用架构图

简介: 本文系统阐述技术架构设计方法,涵盖单体与分布式两种主流架构:单体架构分展现、业务、数据、基础四层;分布式架构聚焦应用间调用关系、内外系统集成及边界划分,强调从产品需求到技术实现的转化逻辑。(239字)

在上一节有了业务架构的基础之上,当我们需要落地具体的技术方案时,此时就需要技术人员开始考虑技术架构了。技术架构是应接应用架构的技术需求,并根据识别的技术需求,进行技术选项,把各个关键技术和技术之间的关系描述清楚。

基础结构解决的主要问题包括:如何进行技术层面的分层、开发框架的选择、开发语言的选择、涉及非功能性需求的技术选择。由于应用架构体系是分层的,那么对应的技术架构体系自然也是分层的。大的分层有微服务架构分层模型,小的则是单个应用的技术分层框架。大的技术体系考虑清楚后,剩下问题就是根据实际业务考虑选择具体的技术点。各个技术点的分析、方案选择,最终形成关键技术清单,关键技术清单应考虑架构本身的分层逻辑,最终形成一个完整的技术架构图。

简而言之,技术架构试讲产品需求转变为技术实现的过程。

单体应用架构

单体应用架构一般是比较传统的分为4层:数据层(Data Layer)、应用逻辑层(Business Layer)、表现层(Presentation Layer)和基础通用层(Common Layer)。

展现层

展现层是整个应用面向用户的入口,用户通过展现层实现与系统的交互。展现层为用户提供系统功能的操作、系统数据的展现。展现层按照面向的用户类型提供不同的交互服务。例如在业务场景中,用户有实操层用户、管理层用户、决策层用户。针对不同层级的用户,系统所提供的功能是不相同:

  • 面向实操层用户,提供的是对系统的操作功能,满足业务日常运营。往往更多的是执行具体操作。
  • 面向管理层用户,满足管理者的日常管理需求,通常提供经营数据、日常管理数据、团队业务数据等等。通过数据分析,改善日常运营的流程。
  • 面向决策层用户,这一层的用户不需要太细的数据,为其提供企业的经营诊断数据和报告,辅助决策支持。

业务层

业务层是应用为解决业务需求,按照产品架构中的功能模块进行细化。业务层是对将产品层从粗到细的分解过程。这个过程是对业务的细化过程,把项目要交付的模块细分到最基本的单元。最基本单元是实现日常业务操作的最细粒度的功能点。由此,我们能够得到实现业务逻辑的全功能结构。

数据层

数据层按照应用的数据模型分别进行存储。这里的存储介质包含关系型数据库、NoSQL、分布式文件系统。

基础层

通用基础层是为系统提供通用能力的中间件,比如流程引擎、消息中间件、缓存、搜索引擎等等。这些中间件和业务是无相关性的,提供的是通用的基础技术能力。

基于上述分析,我们可以得到一个如下单体应用的技术架构:

分布式应用架构

分布式应用架构图实质是产品内部所有应用在分布式环境下的调用关系图。各应用间通过服务的形式相互调用,这是典型的 SOA 架构。在应用架构图中,SOA 架构中的服务注册、服务治理、服务发现这些 RPC 框架的基础平台功能不用在应用架构中体现。

应用架构图的重点是体现应用之间的逻辑关系和通信关系,体现产品的内部关系和外部关系。内部关系是产品内各应用的调用关系;外部关系展现的是产品与外部系统间的调用关系。将应用的内外关系呈现在应用架构中,产品在整个业务中的定位和影响将变得清晰。

应用间调用关系

在产品内部的各子系统之间,为了解决业务需求,通过应用之间的服务调用或者异步消息调用产生数据关系。通过产品架构图中得到的应用系统划分,按照系统间的调用关系,形成内部应用的集成架构图。在应用集成架构图中,需要标注调用链路中的业务含义,清楚的标注应用之间发生的业务关系。

外部系统调用关系

数据输入做为产品的业务数据来源,很大部分是外部系统提供。在应用架构图中,按照业务属性、来源关系进行对外部系统进行归类,并将外部的来源系统纳入整个应用架构中。我们知道计算机系统中,数据输入和数据输出是作为一个整体。应用架构中除了输入系统,输出系统做为整个产品的一部分,需要纳入到应用架构图中。

明确应用调用边界

应用边界对于产品的定位、产品的设计有很重要的影响。在应用架构中需要通过不同颜色的标注,来确定产品与外部系统的边界。通过不同颜色标注外部来源系统、内部应用、应用依赖系统、输出系统。为后续的规划、发展提供基础。

目录
相关文章
|
2天前
|
uml C语言
系统时序图
时序图(Sequence Diagram)是UML交互图,用以动态展示对象间按时间顺序的消息传递与协作。横轴为对象,纵轴为时间,核心元素包括角色、对象、生命线、控制焦点及同步/异步消息等,广泛用于建模系统行为与并发流程。(239字)
62 3
 系统时序图
|
2天前
|
前端开发 数据可视化
什么是低代码
该低代码平台支持可视化拖拽式表单与页面构建,用户无需编码即可快速搭建前端界面,大幅提升开发效率,降低技术门槛。(239字)
34 2
什么是低代码
|
2天前
|
监控 Java 调度
定时任务概述
定时任务是按时间表达式调度执行的任务,适用于对账、提醒、订单超时处理等场景。单体方案包括轮询休眠、Timer、ScheduledExecutorService、Quartz和SpringTask;分布式场景则需解决重复执行、动态调整、故障转移等问题,主流方案有XXL-JOB、Elastic-Job、Saturn等。(239字)
32 2
|
2天前
|
存储 算法 BI
xxljob本地运行
本文详解XXL-JOB分布式任务调度平台的快速上手指南:含源码获取(官网或带注释压缩包)、服务端部署(建库、配数据源、启动访问)、客户端集成、执行器注册、调度策略配置(轮询/分片广播等),以及任务测试与日志查看全流程。
35 0
|
2天前
|
运维 Kubernetes Java
物理部署图
物理部署图描述系统运行时的硬件配置与软件部署结构,展现节点、构件、物件、连接及框架等核心元素,帮助理解分布式系统的运维架构与软硬协同关系,是开发与运维协作的关键视图。(239字)
33 0
物理部署图
|
2天前
|
数据采集 领域建模 数据库
领域模型图(数据架构/ER图)
本文介绍如何通过四色原型法(MI时标性、PPT参与方-地点-物品、Role角色、DESC描述)构建领域模型,并逐步提炼出ER图:先识别关键业务流程,再抽象四类原型并着色标注,最后映射为实体、关系与约束,形成规范的数据架构。
49 0
|
2天前
|
存储 NoSQL 关系型数据库
1-MongoDB相关概念
MongoDB是高性能、无模式的文档型NoSQL数据库,适用于高并发、海量数据、高可用与可扩展场景。支持BSON格式、嵌入式文档、丰富索引(地理/文本/TTL)及水平分片,广泛用于社交、游戏、物流、IoT和直播等领域,尤其适合事务要求低、读写频繁、模型动态的业务。(239字)
27 0
|
7天前
|
存储 数据采集 运维
企业级智能体落地那些难言之隐
2026年,企业级智能体成数字化转型热点,但安全痛点成规模化落地最大瓶颈:数据泄露、合规难适配、技术漏洞、权限失控四大隐患频发。厂商重技术轻安全、企业选型忽视安全评估,导致风险难言、损失难估。安全先行,方为破局关键。
91 0
|
10天前
|
SQL 运维 分布式计算
如何做好SQL质量监控
SLS推出用户级SQL质量监控功能,集成于CloudLens for SLS中。提供SQL健康分、服务/运行指标、SQL Pattern分析及优化建议五大维度监控,助力用户实时掌握请求量、并发、延时、错误率等关键数据,实现精细化治理与性能优化。(239字)
85 5
 如何做好SQL质量监控
|
2天前
|
人工智能 Rust 安全
玩转 OpenClaw Skill :阿里云部署 Hermes Agent/OpenClaw 配置浏览器与邮件Skill教程
如果说OpenClaw与大模型的组合是打造智能AI助理的“大脑”,那么Skills就是赋予它行动能力的“双手”。作为OpenClaw生态的核心扩展模块,Skills通过标准化功能封装,让AI助手能够自主完成网页浏览、信息检索、邮件管理等实际操作,彻底打破“只会说不会做”的局限。2026年最新版OpenClaw已默认集成浏览器操作插件agent-browser v0.2.0,同时支持从Clawhub技能库扩展更多实用功能。本文将先介绍阿里云OpenClaw(原Clawdbot)的快速部署步骤,再详细拆解默认Skills的实战场景与新技能安装方法,搭配可直接复用的指令与代码,让新手也能快速解锁AI
86 6

热门文章

最新文章