Instiq
Chapter 2 · System architecture design·v1.0.0·Updated 7/11/2026·~15 min

What's changed: Initial version

2.2Centralized vs. distributed processing & client/server

Key points

Covers the trade-off between centralized processing, which concentrates processing in one place, and distributed processing, which spreads it across multiple sites or machines, and how to judge processing placement between two-tier (logic held on the client) and three-tier (separating presentation, application, and data) client/server architectures.

As a system grows in scale, a system architect inevitably faces the choice of whether to concentrate processing in one place or spread it across multiple sites or machines. Centralized processing is simple to manage and easy to keep consistent, but it tends to become a single point of failure (SPOF) with inherent scaling limits. Distributed processing excels at availability and scalability, but it carries the burden of management complexity and data-consistency challenges. This section covers the judgment axes for centralized versus distributed processing and the tiered structure of client/server architecture, a concrete form of distribution.

2.2.1Centralized versus distributed trade-offs

  • Centralized processing concentrates processing and data at a single site or server. Management is unified, consistency is easy to maintain, and operating cost tends to stay low, but that site becoming a single point of failure (SPOF) that halts the entire system is a real risk, and there are limits to scaling as load grows.
  • Distributed processing places processing and data across multiple sites or machines. Availability is high because other sites can keep running when one stops, and scaling out via load distribution is easier, but operational complexity increases through inter-site communication overhead, the burden of maintaining data consistency, and the difficulty of isolating faults.

2.2.2Two-tier and three-tier client/server

  • Two-tier client/server places both presentation and application logic on the client, with the server responsible only for data management. Development is relatively simple, but every change to business logic requires updating (redistributing to) every client, and maintenance burden grows as the number of clients increases.
  • Three-tier client/server (the starting point of the Web multi-tier architecture) separates the presentation tier (screen display), the application tier (business logic), and the data tier (data management). Because business logic is consolidated on the server side (the application tier), logic changes no longer require redistributing clients, improving maintainability, and each tier can also be scaled independently. On the other hand, latency tends to increase compared to two-tier due to the added inter-tier communication.
Exam point

Most-tested contrasts: "centralized = easy to manage but prone to becoming an SPOF", "distributed = higher availability and scalability but more operational complexity", "two-tier = business logic on the client, high maintenance burden", and "three-tier = business logic consolidated on the server, improved maintainability". Watch for the oversimplification that "distributed processing is always superior to centralized."

A system architect has been assigned to redesign an inventory-management system used at 50 sales offices nationwide. The current system was built as two-tier client/server, with business logic (inventory-allocation rules, discount calculations, etc.) embedded in each site's client application. Under this design, every time a discount rule changed, all 50 sites had to update their clients individually, and missed updates frequently caused rule inconsistencies between sites. To solve this, the architect proposes migrating to a three-tier architecture. Consolidating business logic into a server-side application tier means a rule change only requires updating one place on the server, and it is reflected across all sites immediately, eliminating the need to redistribute clients. Next, the architect considers whether to fully centralize the new system in a single central data center or distribute servers across regional sites. A fully centralized design in which every store depends on a single data center carries the single-point-of-failure risk that a network outage at that data center would make inventory checks impossible at offices nationwide. Distributing servers by region, on the other hand, raises availability because other regions can keep operating even if one region has an outage, but it introduces the new challenge of how to maintain inventory-data consistency across sites (stock reserved at one site might not immediately show up on another site's inventory screen). Because this company is in a business (high-return-rate apparel retail, where double-allocating inventory is critical) that strongly demands immediate consistency of inventory data, the architect ultimately adopted a compromise design that keeps the primary system at a central data center while establishing a geographically separate hot-standby backup center, capturing the consistency benefit of centralized processing while mitigating the single-point-of-failure risk.

ItemTwo-tierThree-tier
Business-logic placementOn the clientOn the server (application tier)
Impact of a logic changeRequires redistributing every clientReflected by updating one place on the server
ScalabilityLimitedEach tier can scale independently
Inter-tier communicationLowTends to increase (higher latency)
Warning

Trap: "Distributed processing is always superior to centralized because it offers higher availability and scalability" is wrong—distributed processing carries the cost of operational complexity and maintaining data consistency, so centralized processing (or a centralized-plus-backup compromise) can be the right call for a business that strongly demands immediate consistency. Also wrong: "three-tier always outperforms two-tier"—three-tier can be worse in latency than two-tier because of the added inter-tier communication; the main reason to choose three-tier is maintainability and scalability, not raw speed.

2-tier/3-tier C/S.
Placing the processing

2.2.3Section summary

  • Centralized processing is easy to manage but prone to becoming an SPOF; distributed processing raises availability and scalability but adds operational complexity
  • Two-tier keeps business logic on the client with a high maintenance burden; three-tier consolidates it on the server, improving maintainability
  • For businesses that strongly demand immediate consistency, consider a compromise design that captures the benefits of centralization while mitigating the SPOF risk

Sign in to track progress — Log in.

Quick check

(just a quick review)

Q1. An inventory system at 50 nationwide sites requires every client to be updated individually whenever a discount rule changes, and missed updates frequently cause rule inconsistencies between sites. What is the most appropriate design response to this problem?

Q2. For a business that strongly demands immediate consistency (double-allocating inventory would be critical), a proposal was made to fully distribute servers across regional sites to improve availability. What is the most appropriate critique of this proposal?

Q3. What is the most appropriate primary design goal when migrating a client/server architecture from two-tier to three-tier?

Check your understandingPractice questions for Chapter 2: System architecture design