Windchill Runtime Architectural Overview
The following diagram provides a general architectural overview of the main components in Windchill solutions:
The diagram shows components that are usually part of a Windchill solution; the components in your particular solution could vary to some degree. Regardless of which web server you are using, Windchill always installs and uses the Embedded Servlet Engine. Also, you can have a different set of clients that your users access or have additional optional products installed that interact with Windchill (such as the Arbortext Publishing Engine). You may also have customized code that introduces additional components into your architectural picture.
Where your Windchill server components reside should be based on the type and number of machines you have available. The following configurations are possible:
• Each Windchill server component can reside on a separate machine.
• Multiple components can be on the same machine.
• All components can be on a single machine.
• Multiple concurrent instances of Windchill solutions can be on the same server.
The Windchill server components include the following:
• The Windchill client
• The Windchill application server (consisting of the server manager and one or more method servers)
• An HTTP web server
• A Java EE servlet container
• A relational database server
• An LDAP server
• A reverse proxy server (optional)
• An authentication server such as SiteMinder (optional)
| Many of these components can be deployed multiple times for load balancing purposes or to facilitate improved response times. |
The following topics provide a general overview of how some of the components work together. Other topics in the Specialized Administration section of the help center provide additional details on configuring components in your Windchill environment.
Windchill Clients and the Windchill Web Application
During the installation of Windchill, the web application for Windchill is configured in the servlet engine. As shown in the diagram, users can interact with Windchill by entering the Windchill web application URL from a Web browser or by using Creo Elements/Pro 5.0 or one of the workgroup managers. These methods of interaction go through the web server and servlet engine.
The web server receives incoming client requests, parses the URL, and delivers content back to the requester.
The Embedded Servlet Engine generates dynamic HTML pages with Java code. Typically, dynamic HTML is generated from servlets or JSP (Java Server Pages) grouped into the web application. Additionally, JSPs can have embedded Info*Engine tasks for integration with Windchill or other third party data sources.
For details on possible Info*Engine configurations, see
Interacting with Info*Engine.
For details on possible Info*Engine configurations, see the section
Info*Engine User’s Guide.
Windchill Server Manager and Method Servers
The server manager has two main tasks:
• Start up and monitor the method servers
• Manage cache propagation between method servers and throughout a cluster (if you have set up a clustered environment).
To bring Windchill online, you start the server manager. The server manager starts and registers the method servers it is to monitor.
While running, the server manager routes each new client request to the next method server in the registry, per the load balancing algorithm defined in the wt.properties file (the default and most effective setting is round-robin).
The method servers are the core of the Windchill application. They manage the interactions between objects and enforces behavior and business rules.
Your method server configuration can include one or more method servers. When there is only one method server, the Embedded Servlet Engine contains the following web applications:
When multiple method servers are configured, usually one or more are designated as background method servers. When background method servers are configured, foreground methods servers process client requests and background method servers manage background queue activities such as sending email notifications, workflow execution, and asynchronous task execution. When there are multiple method servers, the Windchill and Windchill Help Center web applications run in only foreground method servers:
You can use Java Management Extensions (JMX) MBeans to monitor and manage many aspects of your
Windchill application. See
Using Java Management Extensions (JMX). For details on starting
Windchill, see
Using MBeans to Start and Stop Your Windchill System.
Additionally, the
Server Status page (accessed from > ) provides details about your running system. For
Server Status page details, see
Server Status.
Windchill Web Application and the Windchill Help Center
As part of a
Windchill installation, the
Windchill documentation (both online help and reference topics) is installed as a separate Web application, called the
Windchill Help Center, and is configured in the servlet engine. To provide a comprehensive search capability and easy access to online help and
Windchill reference topics,
Windchill Help Center is maintained outside of your
Windchill codebase directory in the WHC directory. Users can get access to the
Windchill Help Center by selecting
Windchill Help Center from > at the top of any
Windchill page or by clicking any help
icon in the interface.
Additionally, many administrative, installation, upgrade, and customization topics are included in guides (in PDF format) so the topics can be accessed outside of the Windchill Help Center. You can access the latest version of each of the Windchill guides from the Reference Documents link of the PTC Web site at the following URL:
The user interacts with Windchill through the Windchill web application. For details on accessing the Windchill interface, see the Windchill Fundamentals section in the help center.
For a diagram of the complete
Windchill and WHC directory structures, see
Directory Structure.
The RDBMS Database and LDAP Directory Server
The Relational Database Management System (RDBMS) database is the foundation of the Windchill application. It manages the tables which represent the state of the application at any given time.
The database stores the business object metadata, and it may also store content. Links between objects in the Windchill application are represented as primary/foreign-key relationships within the database (though the relationship is not always intuitive).
The LDAP (Lightweight Directory Access Protocol) directory server maintains user and group information for Windchill as well as internal system groups. The directory server also contains Info*Engine configuration information.
| The LDAP directory server must be kept synchronized with the RDBMS database. This means it should be backed up at the same time as the RDBMS database. |
The LDAP directory server is generally represented as a series of nodes in a tree, where each node has a series of attributes such as UID (user identifier) or CN (common name). To manage user and group information, Windchill can be configured to connect to one or more corporate LDAP servers as well as connect to the LDAP bundled with the software.
For details on the installed database settings, see the
Entering Your Database Information.
For details on the installed directory server settings, see
Entering Your LDAP Settings.