Instiq

7System architecture

Practice questions →Glossary →
  • 7.1Approaches to High Availability

    Learn the mindset behind systems that keep running: failure patterns (physical, logical, planned maintenance) and eliminating SPoF (single point of failure); the meaning and distinctions among MTBF, MTTR, availability, SLA, RPO, and RTO; and achieving resiliency through redundancy, clustering (Pacemaker, Corosync), load balancing, and geographic distribution.

  • 7.2Capacity Planning and Scalability

    Learn the mindset behind capacity planning for future load growth, and the difference between scale up/down (vertical) and scale out/in (horizontal). Understand the prerequisite for scaling out—a stateless design that externalizes databases and sessions—plus automating machine reconfiguration with configuration management tools and VM images, and distributing load with a load balancer or DNS round robin.

  • 7.3System Architecture on Cloud Services

    Learn how to architect systems on IaaS (Infrastructure as a Service): the difference between ephemeral storage and persistent storage, fixed IP vs floating IP, isolation via tenant networks, traffic control with firewalls and security groups, object storage, messaging systems/queues, and automatic node adjustment via an autoscaler.

  • 7.4Typical System Architectures

    Learn the recurring reference architectures: the components of LAMP and LAPP (Linux + Apache + MySQL/MariaDB or PostgreSQL + PHP/Perl/Python); the three-tier web model (the roles of the web server, application server, and database server); redundant designs combining a load balancer with HA configuration, database replication, and scale-out; speeding things up with a proxy server, cache, and CDN; and asynchronous data processing via a message queue.