是否有一个商定的UML图表样式用于记录或说明(Docker)容器在系统架构规范中的作用?

Ber*_*man 11 architecture documentation uml distributed-computing docker

我打算绘制一些UML结构图,说明Docker图像(或部署图中的容器)在我构建的软件的整体结构中的位置.我有兴趣说明容器的内容,网络端口和其他接口的映射以及多个容器互操作的方式.

我的问题空间是分布式,基于事件的系统(DEBS),所以我希望我的大多数容器都有消息队列进出.我的架构的另一部分涉及使用内存数据网格,该网格跨越集群中多个节点的多个容器.

如何用UML建模?如果不能,UML是否有计划解决此类分发问题?

Chr*_*phe 9

您希望表示docker容器以及它们如何部署数据网格.但您还想展示这与您的软件架构有何关联.

我想你应该首先看一下部署图.这些最适合表示跨硬件和软件环境执行系统:

  • 这里有一个示例,显示如何表示docker主机,以及具有"节点"和通信路径的图像
  • 这里有一个示例,说明如何进一步用"工件"表示节点内部,例如组件,它们可以表示跨多个节点链接的数据网格组件,如果它是独立组件,则表示消息队列.
  • 这里有一个很好的概述.对您的案例很有意思:您还可以显示跨多个节点部署的工件,并向节点显示依赖关系箭头.这将使图表侧重于组件的分布方式,将工件保留在一侧,执行环境保持在另一侧,避免过度膨胀的3D节点盒.

然后可以在组件图中描述组件体系结构,正如Thomas Kilian在他的评论中所指出的那样.为了完整起见:请看这里这里.

最后,您可以使用复合结构图解释高级独立组件与详细类之间的关系.