2. Windchill基础架构与环境准备

Windchill 不是单一应用,而是一套典型的多层企业级 PLM 平台。实施前如果不先把架构层次、组件职责、数据库与文件存储机制理解清楚,后续安装、调优和排障都会变成“盲人摸象”。本节从架构认知出发,落到服务器环境检查与基础配置,帮助你在真正动手前建立一张清晰的“系统地图”。

一、Windchill 的分层架构与主要组件

Windchill 在逻辑上可划分为四层:客户端层、Web/应用层、业务服务层、数据与存储层。客户端层包括浏览器(现代版本以 Web 端为主)以及 Creo、Office 等嵌入式客户端;Web/应用层由嵌入式 Servlet 容器(Tomcat)承载,负责 HTTP 请求接入、会话管理与静态资源分发;业务服务层是 Windchill 的核心,由 Method Server、后台队列、调度器、工作流引擎等组成,真正执行检入检出、版本迭代、生命周期流转等业务逻辑;数据与存储层则由数据库(Oracle 或 SQL Server)和文件存储(File Vault)共同构成。

需要特别区分两个容易混淆的组件:Method Server 是执行业务方法的 Java 进程,通常按功能划分为多个实例(如主 Method Server、文件服务、工作流等);File Server 负责文件的上传下载与卷管理。二者都通过 RMI 与 Web 层通信,因此主机名、端口、RMI 注册表配置必须一致,否则会出现“页面能打开但检入失败”的典型故障。

Windchill 四层架构与组件关系 客户端层 浏览器 (Web UI) Creo 嵌入式客户端 Office / 其他集成端 Web / 应用层 嵌入式 Tomcat (HTTP/HTTPS) 会话管理 / 认证 (LDAP/SSO) 业务服务层 Method Server 工作流 / 生命周期引擎 后台队列 / 调度器 RMI 通信 · 业务方法执行 · 事务控制 数据与存储层 数据库 (Oracle / SQL Server) File Vault (文件卷存储) 元数据 → 数据库 | 物理文件 → 文件卷

二、数据库与文件存储机制

Windchill 采用“元数据与物理文件分离”的存储策略。数据库保存的是对象属性、版本关系、权限、生命周期状态等结构化信息;而 CAD 模型、图纸、文档等二进制文件并不直接存入数据库,而是写入 File Vault 的卷目录中,数据库中仅记录文件在卷中的相对路径和校验信息。这种设计的好处是数据库体积可控、备份策略灵活,但也意味着数据库备份与文件卷备份必须成对进行,否则恢复后会出现“记录存在但文件丢失”的不一致状态。

File Vault 通常按“主卷 + 多个辅助卷”组织。安装时会指定一个根目录(如 D:\ptc\Windchill_12.0\Windchill\vaults),每个卷对应一个子目录。文件在卷内按哈希或对象 ID 分散存放,避免单目录文件过多导致文件系统性能下降。实施时建议将文件卷放在独立磁盘或高性能存储上,并与数据库分开 I/O 路径。

三、实施前的服务器环境检查

在安装 Windchill 之前,必须逐项核对服务器环境。以下检查清单可直接用于实施前的环境确认:

检查项 典型要求(示例) 验证方式
操作系统 Windows Server 2019/2022 或 RHEL 8.x,64 位 winver / cat /etc/redhat-release
JDK 版本 与 Windchill 版本匹配的 JDK(如 JDK 11) java -version
内存 应用服务器 ≥ 32 GB,数据库服务器 ≥ 32 GB 系统属性 / free -h
磁盘空间 安装盘 ≥ 100 GB,文件卷 ≥ 500 GB(按业务量估算) df -h / 磁盘管理
主机名与 hosts 固定主机名,hosts 中解析到本机 IP hostname、ping 主机名
端口占用 HTTP 80/443、RMI 端口、数据库端口未被占用 netstat -ano | findstr :80
数据库连通性 可创建 Windchill 专用表空间与用户 sqlplus / SSMS 连接测试
时间同步 应用与数据库服务器时间差 ≤ 5 秒 w32tm /query /status
常见陷阱:主机名在安装后修改会导致 RMI 注册信息失效,Method Server 无法启动。安装前务必确认主机名不再变更;若必须修改,需同步更新 wt.properties 中的 wt.rmi.server.hostname 等配置并重新生成 RMI 存根。

四、基础配置与验证

环境检查通过后,进入基础配置阶段。核心动作包括:配置数据库连接池、设置文件卷路径、调整 JVM 堆内存、配置 LDAP/SSO 认证源。以 JVM 堆内存为例,Method Server 的启动参数通常在 methodServer.vm 或对应脚本中设置,示例:

-Xms4096m -Xmx8192m -XX:MaxMetaspaceSize=1024m
-XX:+UseG1GC -XX:MaxGCPauseMillis=200

其中 -Xms 与 -Xmx 建议设为相同值以避免堆动态伸缩带来的停顿;MaxMetaspaceSize 需根据加载类数量预留,过小会触发 OutOfMemoryError: Metaspace。配置完成后,通过 Windchill Shell 执行 windchill start,观察日志中 Method Server 是否注册成功、数据库连接池是否初始化完成。

验证阶段建议按“由内到外”的顺序:先确认数据库连接正常,再确认 Method Server 与 File Server 的 RMI 通信正常,最后通过浏览器访问 http://主机名/Windchill 登录并执行一次简单的文档检入检出。若检入成功且文件卷目录下出现新文件,说明数据库与文件存储的协同工作正常,环境准备阶段即可判定通过。

实施建议:在正式安装前,先用一台测试服务器完整走一遍“环境检查 → 安装 → 基础配置 → 检入验证”的流程,记录每一步的实际参数与日志输出。这份记录将成为生产环境实施时最可靠的对照基线。