Tiered-Server Concepts
Tiered-Server Concepts
Many sites view their deployments as an n-tier application architecture -- a model in which the application is divided into several service tiers or layers that can be modified independently. Adherence to this organization results in a highly flexible and highly reusable application. It also results in an application that can use a variety of Web servers, application servers, and database servers because the interfaces for each layer follow industry standard protocols.
Server Tiers
The essential tiers of the Web-server side are:
Tier |
Description |
Role |
Software Examples |
---|---|---|---|
Client Tier | Holds the user interface elements. These can be HTML pages as rendered in a Web browser to display text and tabular data. These can include HTML5 controls embedded in the browser to display vector data, such as charts, Gantt charts, or architectural-style drawings. These can also be rich-interface clients, such as the Archibus Smart Client, that provide advanced interactivity or extensions to professional CAD and BIM packages. | Client |
Archibus in the Web browser Archibus Smart Client Archibus Smart Client Extensions for AutoCAD and Revit |
Presentation Tier |
Holds static content, such as views, forms and reports. |
Web Server |
Microsoft Internet Information Services, Apache |
Business Tier |
Processes business logic and dynamic content that changes with each query -- the logic that forms the brains of your operation. This tier advances work to the next state, sends notifications, and runs calculations. This tier also generates dynamic Web forms, drill-down reports, edit forms, and workflows. By centralizing all logic, this tier keeps all users' workflows and data synchronized. |
Application Server |
Tomcat |
Data tier |
Holds the data saved in the database management system. |
Database Server |
Oracle
|
J2EE deployments gain scalability by being able to offload different types of processing onto distinct computers, each optimized for its specific role.
From a broad perspective, the different tiers of distinct software may be deployed as below.
The client workstation (not listed in the above table) executes the "thin-client" layer of the software and provides client-side display of the presentation tier. Pure HTML and JavaScript presentation-layer code is executed by Web browser programs.
Using a Separate Web Server
Some sites use an additional Web Server between the clients and the application server. The most common purpose for this Web server is authentication. For instance, you can run Microsoft Internet Information Server (IIS) and Apache JK to perform single-sign on authentication against Active Directory. IIS will validate the requests from the browser and pass on only those that pass authentication.
Other sites use the Web Server to boost performance by serving up static content, such as bitmap images. While this configuration works with Archibus, it typically is not worth the added configuration complexity. Our benchmarks for large, clustered deployments do not rely on a separate Web Server even for configurations that serve many thousands of concurrent users.