物理部署图

简介: 物理部署图从运维视角展现系统运行时的硬件配置与软件部署结构,描述节点、构件、物件及连接关系,常用于分布式系统设计。它明确应用如何在硬件上部署,涵盖ECS、K8s等资源,帮助实现软硬件协同。

物理部署图
一、什么是物理部署图
部署图描述的是系统运行时的结构,展示了硬件的配置及其软件如何部署到网络结构中。一个系统模型只有一个部署图,部署图通常用来帮助理解分布式系统。
综上所述:物理部署图更多地是以运维的视角描绘运行时的系统的网络与部署结构。
二、为什么要画物理部署图?
一个好的开发人员要懂得一定的运维知识。
物理部署图核心要解决的是:应用工程(软件)怎么和硬件合到一起运行。
三、物理部署图核心元素

  1. 节点(Node)
    节点是存在于运行时的代表计算机资源的物理元素,可以是硬件也可以是运行于计算机上的软件系统:如ECS云服务器实例、或Kubernetes的节点Node。如下图:
  2. 构建(Component)
    构件(component)是系统中遵从同一组接口且提供其实现的物理的、可替换的部分。每一个构件能实现一定的功能,为其他构件提供使用接口,方便软件的复用,使用构件最重要的是复用。个人将Kubernetes节点Node中的不同Pod理解为Node节点的不同构件。如下图所示:
  3. 物件(Artifact)
    物件是指软件开发过程中的产物,包括过程模型(用例图等)、源代码、可执行程序(如jar包)等。如下图表示一个运行在节点实例中的Kubernetes Pod构建中的一个java可执行程序jar包。
  4. 连接(Association)
    节点之间的连线表示系统之间进行交互的通信路径,这个通信路径成为连接,如下一节示例图所示,连接中有网络协议。
  5. 框架(Frame)
    一个或多个节点可以组成一个框架,其中节点也可以包括构建与物件等元素。如下图多个Kubernetes节点Node可以组成一个框架(k8s集群)。
    四、物理部署图示例
相关文章
|
11月前
|
弹性计算 监控 调度
ACK One 注册集群云端节点池升级:IDC 集群一键接入云端 GPU 算力,接入效率提升 80%
ACK One注册集群节点池实现“一键接入”,免去手动编写脚本与GPU驱动安装,支持自动扩缩容与多场景调度,大幅提升K8s集群管理效率。
610 89
|
8月前
|
Kubernetes Linux Docker
蓝易云:Rocky Linux 8.9配置Kubernetes集群详解,适用于CentOS环境
这是在Rocky Linux 8.9上配置Kubernetes集群的高级概述。确保遵循每个步骤,不要跳过环境设置部分,因为这是集群稳定性的关键。
334 2
|
9月前
|
存储 Kubernetes Shell
轻量化K8S 入门
K3s是轻量级Kubernetes发行版,单二进制文件集成控制平面,支持快速部署。采用containerd、Flannel等组件,支持高可用、离线安装与灵活扩展,适用于边缘计算、开发测试及生产环境。
|
9月前
|
存储 算法 搜索推荐
基础算法
本章介绍基础算法,涵盖加密与排序两大类。加密部分包括对称加密(如AES、SM4)、非对称加密(如RSA、SM2)、哈希摘要(如SHA-2、SM3)、电子签名及密码安全存储方案(如加盐、BCrypt)。排序部分讲解常见算法:冒泡、快排、归并、堆排序等,分析其时间复杂度与适用场景,并区分比较类与非比较类排序方法,强调实际应用中多采用混合策略以提升效率。(239字)
|
9月前
|
运维 Devops 开发工具
生产环境缺陷管理
为解决大型团队多分支开发中bug管理混乱、人为疏漏导致生产事故的问题,我们基于go-git开发了分布式工具git-poison。它实现bug的追溯、查询与发布卡点,自动化同步“投毒-解毒”信息,阻塞带未修复bug的版本发布,降低协同成本,避免“重复翻车”。已集成至发布与运维平台,提升缺陷管理效率与系统稳定性。
|
9月前
|
缓存 算法 搜索推荐
线程池
线程池是一种高效的多线程管理机制,通过复用已创建的线程,减少频繁创建和销毁线程的开销。它将任务提交与线程执行解耦,支持任务队列、线程调度及资源控制,提升系统性能与稳定性,广泛应用于高并发场景。
|
9月前
|
Java 大数据
ArrayList扩容机制
ArrayList扩容机制简介:添加元素时,先调用ensureCapacityInternal()判断容量,首次扩容默认为10。当容量不足时,通过grow()方法将容量扩展为原来的1.5倍(oldCapacity + (oldCapacity >> 1)),确保高效扩容。add第11个元素时触发第二次扩容,容量从10增至15。length是数组属性,length()是字符串方法,size()是集合元素个数获取方法。
|
9月前
|
存储 缓存 安全
One Trick Per Day
初始化Map宜预估容量,避免扩容开销;禁用Executors创建线程池,防止OOM,推荐手动定义参数或使用Guava;Arrays.asList返回不可变列表,禁止修改操作;遍历Map优先使用entrySet或forEach;SimpleDateFormat非线程安全,建议用ThreadLocal或Java8新时间API;并发更新记录需加锁,推荐乐观锁配合version机制。
|
9月前
|
uml C语言
系统时序图
时序图(Sequence Diagram)是UML中描述对象间消息传递时间顺序的交互图,横轴为对象,纵轴为时间。用于展示交互流程、强调时序、体现并发过程。主要元素包括角色、对象、生命线、控制焦点和消息等,直观呈现系统动态协作过程。
|
9月前
|
存储 消息中间件 开发框架
应用架构图
应用架构图是技术实现的蓝图,体现系统分层、技术选型及应用间调用关系。涵盖单体与分布式架构,明确内外系统边界、数据流转与服务集成,支撑业务需求向技术落地的转化。(239字)