物理部署图

简介: 物理部署图描述系统运行时的硬件配置与软件部署结构,展现节点、构件、物件及连接关系,帮助开发与运维人员理解分布式系统的部署逻辑与网络架构。

一、什么是物理部署图
部署图描述的是系统运行时的结构,展示了硬件的配置及其软件如何部署到网络结构中。一个系统模型只有一个部署图,部署图通常用来帮助理解分布式系统。
综上所述:物理部署图更多地是以运维的视角描绘运行时的系统的网络与部署结构。

二、为什么要画物理部署图?
一个好的开发人员要懂得一定的运维知识。
物理部署图核心要解决的是:应用工程(软件)怎么和硬件合到一起运行。
三、物理部署图核心元素
1. 节点(Node)
节点是存在于运行时的代表计算机资源的物理元素,可以是硬件也可以是运行于计算机上的软件系统:如ECS云服务器实例、或Kubernetes的节点Node。如下图:

I'manode


2. 构建(Component)
构件(component)是系统中遵从同一组接口且提供其实现的物理的、可替换的部分。每一个构件能实现一定的功能,为其他构件提供使用接口,方便软件的复用,使用构件最重要的是复用。个人将Kubernetes节点Node中的不同Pod理解为Node节点的不同构件。如下图所示:

ImaNode

Imacomponenti

inaNode


3. 物件(Artifact)
物件是指软件开发过程中的产物,包括过程模型(用例图等)、源代码、可执行程序(如jar包)等。如下图表示一个运行在节点实例中的Kubernetes Pod构建中的一个java可执行程序jar包。

hbos-businessnode1

hbos-doctor-stationPods

hbos-doctor-station.jar


4. 连接(Association)
节点之间的连线表示系统之间进行交互的通信路径,这个通信路径成为连接,如下一节示例图所示,连接中有网络协议。
5. 框架(Frame)
一个或多个节点可以组成一个框架,其中节点也可以包括构建与物件等元素。如下图多个Kubernetes节点Node可以组成一个框架(k8s集群)。

THTTP

businessKubernetescluster

KubernetesMasterNode

三方集成平台

APIServer

ReplicationContoller

+HTTP

edeployp

edeploy)

cdeployp

hbos-businessnode1

hbos-businessnoden

hbbos-businessnode2

hbos-nurse-stationPods

hbos-doctor-stationPods

businesscomponentPods

other-business-project.jar

hbos-doctor-station.jar

hbos-nurse-ststion.jar


四、物理部署图示例

互联网区

前端用户

管理端用户

前端用户

HTTP(S)

HTTP(S)

CDN

DNS

LNTEMET

DMZ区

外网防火墙

安全区

DDOS高防

云盾

WAF

KEEPLIVED

负载均衡

反向代理

HA

NGINX

核心交换域

应用区

内网防火墙

应用服务器

应用服务器

应用中心交换

应用服务器

应用服务器

防火墙

核心交换机

防火墙

基础应用服务

日志服务器

认证服务器

GATEAY网关

GATEAY网关

数据中心交换机

数据区内网

文件服务器

文件服务器

统计查询服务

历史数据服务

数据中心服务

主从复制,读写分离

西

业务服务器B

业务服务器A

业务服务器...

H2数据库

H2数据库

DB

DB

DB

配置中心

配置中心

配置中心

SLAVE

MASTER

SLAVE

缓存服务集群

消息服务集群

()

MASTER

SLAVE MONGODB

MONGODB

REDIS备份数据库

MASTER RABBITMQ

SLAVE RABBITMQ

REDIS数据库



相关文章
|
1天前
|
安全 Java 数据安全/隐私保护
2.OAuth2.0实战案例
本文介绍了基于Spring Boot与Spring Cloud构建OAuth2授权服务的完整流程,涵盖父工程搭建、资源服务器与授权服务器的配置与实现,并通过授权码、简化、密码及客户端四种模式进行测试验证,实现安全的统一认证与资源访问控制。
 2.OAuth2.0实战案例
|
人工智能 Java Serverless
【MCP教程系列】搭建基于 Spring AI 的 SSE 模式 MCP 服务并自定义部署至阿里云百炼
本文详细介绍了如何基于Spring AI搭建支持SSE模式的MCP服务,并成功集成至阿里云百炼大模型平台。通过四个步骤实现从零到Agent的构建,包括项目创建、工具开发、服务测试与部署。文章还提供了具体代码示例和操作截图,帮助读者快速上手。最终,将自定义SSE MCP服务集成到百炼平台,完成智能体应用的创建与测试。适合希望了解SSE实时交互及大模型集成的开发者参考。
12954 60
|
1天前
|
消息中间件 算法 网络协议
8.选举机制理解描述
本文深入解析ZooKeeper的Leader选举机制,涵盖启动期与运行期的选举流程、FastLeaderElection算法核心规则及实现细节,重点分析投票PK、逻辑时钟、状态变更等关键环节,揭示数据一致性保障原理。
|
1天前
|
存储 算法 API
2.持久化FileTxnLog
本文深入分析Zookeeper持久化核心类FileTxnLog源码,涵盖事务日志的写入、读取、校验与提交机制,重点解析append、commit、truncate等关键函数及日志文件管理策略。
|
1天前
|
SQL 运维 分布式计算
如何做好SQL质量监控
SLS推出用户级SQL质量监控功能,集成于CloudLens for SLS,提供健康分、服务指标、运行明细、SQL Pattern分析及优化建议五大维度,助力用户全面掌握SQL使用情况,提升日志分析效率与治理能力。
|
1天前
|
人工智能 Serverless API
一键部署Stable Diffusion教程
本教程指导用户通过阿里云函数计算一键部署Stable Diffusion,支持多种绘图风格,提供免费额度体验。包含详细步骤与注意事项,助力快速搭建AI绘画环境。
一键部署Stable Diffusion教程
|
1天前
|
jenkins Java 持续交付
SpringBoot集成Jenkins
本文介绍在阿里云CentOS系统上安装配置Jenkins的完整流程,涵盖环境准备(JDK1.8)、Jenkins安装与启动、端口及用户配置、Git与Maven集成,并包含插件安装与初始设置步骤,助力实现持续集成部署。
 SpringBoot集成Jenkins
|
1天前
|
缓存 开发工具 git
QLExpress使用及源码分析
基于阿里巴巴QLExpress规则引擎,通过实体构建、接口定义与脚本编写(如user.yaml),实现灵活的业务规则配置。支持AST语法树解析、上下文赋值与缓存机制,适用于动态表达式执行与规则计算场景。
|
1天前
|
Java 测试技术 Linux
生产环境发布管理
本文介绍大型团队中多环境自动化发布流程,涵盖DEV、TEST、PRE、PROD各环境职责,结合CI/CD平台实现分支管理、一键部署与日志追踪,提升发布效率与系统稳定性。
生产环境发布管理
|
1天前
|
Dubbo Java 应用服务中间件
1.入门运行Soul
Soul 是基于 WebFlux 构建的响应式 API 网关,支持 Dubbo、Spring Cloud 等多种协议,具备高性能、异步、跨语言特性。提供插件化架构,支持热插拔、动态配置、A/B 测试与蓝绿发布,集成鉴权、限流、熔断等丰富插件,适用于微服务网关场景。
 1.入门运行Soul