物理部署图

简介: 物理部署图描述系统运行时的硬件配置与软件部署结构,展现节点、构件、物件及连接关系,常用于理解分布式系统。它从运维视角出发,揭示应用如何在硬件上运行,是开发与运维协同的重要设计工具。

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

  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集群)。
    四、物理部署图示例
相关文章
|
10月前
|
Java 测试技术 Linux
生产环境发布管理
本文介绍大型团队如何通过自动化部署平台实现多环境(dev/test/pre/prod)高效发布与运维。涵盖各环境职责、基于Jenkins+K8S的CI/CD流程、分支管理、一键发布及回滚机制,并结合Skywalking实现日志链路追踪,提升问题定位与修复效率,助力企业级DevOps落地。
|
10月前
|
安全 Java 开发工具
工程搭建与验证
本教程介绍如何搭建工程并整合SpringSecurity,通过引入依赖、启动验证,实现登录安全控制。默认账户为user,密码由系统生成并每次重启后变化。访问受保护路径将自动跳转至登录页,成功登录后重定向至原请求页面。完整代码详见GitHub仓库及指定分支。
|
10月前
|
前端开发 安全 Java
自定义认证前端页面
本示例演示Spring Security基础配置:前端引入登录页,后端新增接口与安全配置。通过SecurityConfig实现请求认证、表单登录、自定义跳转等,启动后访问/demo/index自动跳转登录页,认证成功返回提示信息,完成权限控制验证。
|
10月前
|
Java 关系型数据库 开发工具
自救手册(公司小白)
本文介绍了新员工入职后如何快速搭建开发环境,包括账号开通、JDK/Maven/MySQL等工具配置、Git使用与常见问题处理,并详细说明了代码拉取、冲突解决、二方包构建及Nacos连接数据库失败等问题的解决方案,助力开发者高效上手项目。
1233 0
 自救手册(公司小白)
|
10月前
|
运维 Devops 开发工具
生产环境缺陷管理
git-poison基于go-git实现分布式bug追踪,解决多分支开发中bug漏修、漏发问题。通过“投毒-解毒-银针”机制,自动化卡点发布流程,降低协同成本,提升发布安全性与效率,已在大型团队落地应用。
生产环境缺陷管理
|
10月前
|
NoSQL Linux Shell
MongoDB单机部署
本文介绍MongoDB在Windows和Linux系统的安装启动方法,包括下载地址、版本选择(稳定版/开发版)、解压配置、命令行与配置文件启动方式,以及常见问题解决。同时涵盖Shell连接、图形化工具Compass的使用,并提供环境变量设置、日志与数据目录配置等详细步骤,确保单机部署顺利进行。
|
10月前
|
SQL Java 数据库连接
Activity代码实现
本文介绍如何使用Activiti工作流引擎快速搭建一个简单审批流程。涵盖BPMN流程设计、流程部署、实例启动、任务查询与完成全过程,结合代码演示从环境配置到数据库表生成的完整实现,帮助初学者掌握工作流核心操作。
|
10月前
|
Web App开发 安全 JavaScript
跨域处理
本文介绍了Web开发中的跨域问题及解决方案。当协议、域名或端口不同时,浏览器因同源策略阻止资源访问。通过CORS(跨域资源共享)机制,使用`@CrossOrigin`注解、全局配置`WebMvcConfigurer`或自定义过滤器添加响应头,可实现安全的跨域请求。
|
10月前
|
JSON 安全 Java
鉴权
本文介绍基于Spring Security与JWT实现客户端Token认证方案,涵盖Token生成、验签、权限控制全流程。通过WebSecurityConfig配置安全规则,结合JWTLoginFilter与JWTAuthenticationFilter实现登录认证与请求拦截,利用自定义验证组件完成用户身份校验,并通过RBAC模型实现细粒度权限管理,构建安全的Spring Boot应用防护体系。