体系结构概述

IBM® UrbanCode Deploy 体系结构由服务层和数据层组成。

服务层具有中央服务器,此服务器提供 Web 服务器前端服务和核心服务,例如,工作流程、代理管理、部署、清单、安全性及其他。服务可视为托管一部分业务逻辑的独立机制。服务可供客户机、代理或其他服务使用。部署由服务器编排,并由分布在整个网络中的代理使用。大部分客户机使用 HTTP(S) 通过浏览器与 Web 服务器通信。大部分服务器 - 代理通信是使用 JMS(下文讨论)完成的,但需要时也会使用HTTP(S)。

数据层的关系数据库存储配置和运行时数据。数据层的文件存储器 CodeStation 包含日志文件、工件和其他非结构化数据对象。报告工具可直接连接至关系数据库。

典型系统的图,其中显示数据层、服务层和客户机 单击此区域以获取有关客户机的信息。 单击此区域以获取有关服务层的信息。 单击此区域以获取有关代理程序的信息。 单击此区域以获取有关数据层的信息。

IBM UrbanCode Deploy 使用无状态通信来进行服务器 - 代理通信(基于 JMS)和客户机 - Web Service 通信。此处使用的“无状态”意味着服务器几乎不保留请求之间的会话信息,每个请求包含处理它时所需的所有信息。服务器设置侦听套接字并侦听代理、中继设备和用户(客户机)。为提高安全性,代理不会侦听端口。代理在准备好将事务过渡至新状态时发送请求。

服务器 - 代理通信是围绕传输或部署组件而构建的。组件可包含任何在业务上有意义的内容,例如,环境信息、配置数据、源、静态文件或与软件项目相关联的任何其他对象。因为 JMS 连接是持续连接,并且未基于请求/响应协议,所以 IBM UrbanCode Deploy 不会频繁开启和关闭端口。这些持续连接允许服务器随时与代理通信,同时代理保持安全和可伸缩。

许多 IBM UrbanCode Deploy 服务是 REST 类型(表示状态传输)。REST 样式的服务是焦点放在通过 HTTP 传输资源上的 Web Service。资源可以是任何在业务上有意义的数据。资源使用可自我描述的格式(例如,XML 或 JSON,即 JavaScript 对象表示法)传输。XML 和 JSON 表示通常会在代理/客户机请求时对资源状态建模。REST 样式的服务通过确保请求包括服务器做出明确响应时所需的全部数据来实现无状态性。


反馈