Teamcenter Architecture & Communication Between Tiers
Teamcenter architecture provides two types of client-server software architecture pattern. In both two-tier and four-tier teamcenter architecture, separate modules are developed and maintained independently on same or separate platforms.
Teamcenter four-tier architecture
Four tier architecture model has following tiers:
Client Tier
Client tier comprises of rich client(java application), thin client(provides access to teamcenter through web browser, UI provides browser based view) and other clients that provides additional functionality to rich client such as Teamcenter Integration for NX, Lifecycle Visualization or Teamcenter Client for Microsoft Office. These additional client features require web-tier.
Four-tier rich client is installed over the network by over-the-web installer. It is launched from web browser, but after installation four-tier rich client does not need the web browser.
Web Tier
J2EE Web tier is a java application that runs web application server such as Oracle Weblogic. This is a third party application that is responsible for communication between client tier and enterprise tier. TreeCache is employed at both web tier and enterprise tier in a synchronized manner for the communication.
Web tier also provides configuration for thin client and four tier rich client installation on users machine. Web tier includes Web Application Manager, a distribution server and a distribution server instance. Only one distribution server is required to manage multiple distribution server instances. Distribution server instance contains the Over-the-Web installer and Rich Client 4-tier solution to install particular configuration of rich client on different machines.URL is provided to users in network for the installation.
Web Application Manager builds EAR file .It is then deployed to web application server on web tier host. Users access the thin client from browser using web tier host.
Also Note: Multiple Web Application Server Instances can be created for the same environment.
Enterprise Tier
Server Pool & Pool Manager
Enterprise tier comprises of server pool (teamcenter server processes) and a server manager (called pool manager for J2EE based server manager) to manage the pool.
In four tier environment, where large number of users login simultaneously and access data and files, it is good idea to maintain a server pool. This increases the re-usability and improves the overall performance of teamcenter. Users can login fast and retrieve or store information quickly.
Pooling is a process where cache of database connection objects is maintained. Creating connections again and again in four tier environment is too expensive and exhaustive. In the pool, connection objects are created ahead of time when server manager starts. This pool of connections is managed by pool manager/server manager. When user requests for a connection, pool manager disperses a connection object from the pool and when user is finished with teamcenter session, it returns the connection object back to pool.
Server Manager & TreeCache
A treecache is also configured for server manager to communicate with web application server. Information retrieved by teamcenter server in the pool is sent to web application server (in web tier) by server manager. Treecache parameters help server manager to find the web application server. The requested information will be further sent to client by web tier.
Also Note: Four-tier architecture allows maintaining multiple server managers. Each of the server manager will have a separate treecache configuration. Multiple server managers will be preferred, when huge number of users login and access data. Each server manager can then maintain a manageable pool of teamcenter servers without affecting performance.
Resource Tier
Resource tier comprises of database server, database, volumes and file servers. It is recommended to run server manager and volume server (FSC running on same host, where volume is located) on the same host.
Communication Between the Tiers
While communicating between tiers, user requests are processed and information is retrieved or stored. For a certain request by user in teamcenter, client (client tier) will interact with web application server (web tier) and web application server in turn coordinate with teamcenter server (enterprise tier). Data storage and retrieval is handled further with communication between teamcenter server and database (resource tier).This communication between tiers is explained below:
From Client to Web Application Server
Client interacts with Web Application Server via HTTP protocol. Web Servers are good at serving files. Web server takes request from client and maps it to the file on file system and sends the file back to the client. A cache is maintained for this static content (files that are not generated or modified) and it can reliably and effectively find the file and send it back.
For any logical (teamcenter queried data) or dynamic content (files that are generated or changed), web server cannot do it on its own. It has to delegate the request to enterprise tier, and this is when treecache cluster comes in scene.
From Web Application Server to Teamcenter Server
Web Application Server sends the requests it cannot handle to server manager at enterprise tier. TreeCache is maintained for web application that tells it to send the particular request to server manager at enterprise tier. The host and port of server manager at which the request has to be sent is listed in its treecache. There has to be a server with this host and port to receive the request at enterprise tier. After acknowledging the receipt of request, request is processed and resulting logical or dynamic content is sent back to web server for the client to receive it. To send the information back to web tier, there is another treecache employed for server manager at enterprise tier. This treecache will have information of port and host of the web application where the content has to be sent back. This mode of communication between web application server and server manager is called TCP mode.
For communication to take effect, treecache configuration should be set as follows:
From Teamcenter Server to Database and File Server
Information is stored and retrieved from database or file server. The information is then passed back to teamcenter server in enterprise tier and eventually to client.
For managing files, FMS Client Cache (FCC) process runs on client host. This FCC on client host requests for files or upload files to FMS Server Cache (FSC) running as volume server.
Teamcenter two-tier architecture
Two tier architecture model comprises of following tiers:
Client Tier
Two-tier rich client is installed only through TEM. Teamcenter server runs on client workstation. Since this architecture is intended for creating local standalone instance of teamcenter, there will be no enterprise tier( no need to maintain a server pool) and there is no need of web tier (no http protocol).So web tier and resource tier are skipped in two tier architecture and teamcenter server runs directly on client machine.
Resource Tier
Resource tier comprises of database server, database, volumes and file servers. Teamcenter File Management System (FMS) manages the rich client access to volumes:
- The FMS server cache (FSC) process runs on the server hosting the volume.
- The FMS client cache (FCC) process runs on the rich client host.
Also Read:
FMS Configuration for Multiple FSCs & Cache Server
FMS Configuration for Remote Clients
Troubleshooting FSC Failure-to-Start
Structure Manager in Teamcenter