Multi-tier application definition
A multi-tier application is an application that splits its functions across separate layers, meaning developers can change one section without affecting others. Typically, these sections run on different servers, improving the application’s speed and flexibility. Multi-tier applications are commonly used in various industries, from banking to marketing.
See also: application acceleration
Typical layers of multi-tier applications
- Presentation tier. This layer typically includes components like the web server, front-end frameworks and libraries, static content, load balancers, and caching.
- Logic tier. The logic tier includes the application server, middleware, API gateways, business logic components, and microservices.
- Data tier. The data tier (or the data access tier) includes relational databases, ORM tools, database caching, data warehouses, and file storage.
Where multi-tier applications are used
- E-commerce platforms. Websites like Amazon or eBay have distinct layers for user interfaces, business logic (pricing algorithms), and data storage (product listings, user profiles).
- Banking systems. These require secure and scalable solutions for user account management, transaction processing, and data storage.
- Content management systems (CMS). Platforms like WordPress use different tiers to handle the user interface, content rendering, and database storage.
- Customer relationship management (CRM) systems. Applications like Salesforce separate user interactions, business logic (like lead scoring algorithms), and customer data storage.
- Online gaming platforms. Games may have a user interface layer, a game logic layer, and a layer to store player data and game states.
- Streaming services. Platforms like Spotify separate the user interface, content recommendation algorithms, and content databases.
- Social media platforms. Sites like Facebook have layers for displaying content, handling business logic (like feed algorithms), and storing user data and posts.