Enterprise software applications are n-tier, where "n" can represent any number of tiers, or layers of processing. The IBM TRIRIGA Application Platform is a logical four-tier system: web, application (and process), tools, and database.
The layering of an application into logical tiers also separates the functions in each tier. In terms of physical tiers, each physical tier describes the actual hardware configuration, the pieces of equipment, and the function of each piece.
The IBM TRIRIGA Support Matrix lists the servers, components, and operating systems with which the IBM TRIRIGA Application Platform is certified.
The IBM TRIRIGA Application Platform uses many different types of servers. The word "server" is often used to mean a physical piece of equipment, but it can also represent a logical separation that is based on function. Each of these logical servers can be collocated on physical servers, or separated so that each logical tier is installed on their own physical server.
Alternatively, each of these logical tiers can be installed on one or more virtual servers. In turn, these virtual servers can be on a physical server, or a cluster of physical servers in a virtual server cluster.
The following logical function-based servers are used in the IBM TRIRIGA Application Platform:
- Web server: Receives HTTP requests for web content. Also referred to as a front-end server.
- Application server: Carries out the user business logic with JBoss Application Server, WebLogic Server, or WebSphere® Application Server.
- Process server: Carries out the background processing and analytics with JBoss Application Server, WebLogic Server, or WebSphere Application Server.
- Tools server: Carries out the reporting. Holds other third-party tools such as Brava! Enterprise Viewer for IBM TRIRIGA.
- Database server: Holds the relational database and supported database management system such as Oracle Database or Microsoft SQL Server.
The web server is the tier with which each user web browser communicates. Examples of web servers include IBM HTTP Server, Microsoft Internet Information Services (IIS), and Apache HTTP Server. The web server handles HTTP requests only and does not run business logic. The IBM TRIRIGA Application Platform also supports Secure Sockets Layer (SSL) by using HTTPS. Typically, HTTP uses port 80 (non-secure connection) and 443 (secure connection), but it can be configured to use other ports. Each time a user requests a JavaServer Page (JSP), the web server passes the request to the application server for processing. The web server is a physical manifestation of the web tier.
The application server is a Java virtual machine (JVM) with an instance of the runtime application. This server runs most of the business logic. Application server processes are CPU-intensive and require a great deal of memory. The application tier consists of JavaServer Pages (JSP) and Java classes. The Java™ 2 Platform, Enterprise Edition (J2EE) application server provides a JSP container, a database connection pool, and transaction management services. The application server is a physical manifestation of the application (middleware) tier.
The process server is a JVM with an instance of the runtime application that is set up as a dedicated processing or analytics engine. This server is configured almost exactly like an application server, but no users sign on to this server. It handles all workflow requests that are queued from users or by the IBM TRIRIGA software. The process server is a physical manifestation of the application (middleware) tier.
The tools server houses the two major third-party extensions from IBM TRIRIGA. This server can run the optional Brava! Enterprise Viewer for IBM TRIRIGA or optional Business Intelligence and Reporting Tools (BIRT) process server or both. Specifically, this server is only used for presentation processing. It communicates with the application server and the process server by using TCP/IP and with the database server by using Java Database Connectivity (JDBC). The tools server does not communicate directly with users and is kept isolated from HTTP requests.
Brava is a web-based client-server package that provides view, markup, and collaboration functions. Viewers use a thin client to display documents that are rendered by the server. This process eliminates many compatibility issues and lowers the number of software applications that are needed by users.
The database server runs the database process. The database is where data is stored. The major database servers use Structured Query Language (SQL) to store and retrieve data. The Oracle Database server and Microsoft SQL Server use SQL. But each server is a different database engine and each has its own extended SQL for competitive differentiation. The application tier communicates with the database tier by using JDBC connection pools. The database server is a physical manifestation of the database tier.
The physical configuration of any system depends greatly on the number of users and amount of data that it supports. For information about IBM TRIRIGA Application Platform system implementations, see the IBM TRIRIGA Best Practices for System Performance.