Bird
Raised Fist0
Microservicessystem_design~20 mins

Monolith vs microservices comparison - Practice Questions

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Challenge - 5 Problems
🎖️
Monolith vs Microservices Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
Key difference in deployment between monolith and microservices
Which statement best describes the deployment difference between a monolithic application and a microservices architecture?
AMonoliths deploy all features as a single unit; microservices deploy each service independently.
BMonoliths deploy services independently; microservices deploy all features as one unit.
CBoth monoliths and microservices deploy all features as a single unit.
DBoth monoliths and microservices deploy services independently.
Attempts:
2 left
💡 Hint
Think about how updates affect the whole system in each architecture.
scaling
intermediate
2:00remaining
Scaling approach difference between monolith and microservices
How does scaling differ between monolithic and microservices architectures?
AMonoliths scale individual services; microservices scale entire application.
BBoth scale individual services independently.
CMonoliths scale entire application; microservices scale individual services as needed.
DBoth scale entire application as a single unit.
Attempts:
2 left
💡 Hint
Consider resource usage when only one feature needs more capacity.
tradeoff
advanced
2:30remaining
Tradeoff in complexity between monolith and microservices
Which option correctly describes a tradeoff in system complexity when choosing microservices over a monolith?
AMicroservices reduce deployment complexity but increase operational complexity.
BMicroservices reduce both deployment and operational complexity.
CMicroservices increase deployment complexity but reduce operational complexity.
DMicroservices increase both deployment and operational complexity.
Attempts:
2 left
💡 Hint
Think about managing many services versus one application.
Architecture
advanced
2:30remaining
Impact on fault isolation in monolith vs microservices
Which statement best explains fault isolation differences between monolithic and microservices architectures?
AMonoliths isolate faults better because all code is in one place.
BIn microservices, failure in one service usually does not crash the entire system; in monoliths, failure can affect the whole app.
CBoth architectures isolate faults equally well.
DIn monoliths, failure in one module never affects other modules; in microservices, failure always crashes the entire system.
Attempts:
2 left
💡 Hint
Consider how independent services affect system stability.
estimation
expert
3:00remaining
Estimating operational overhead for microservices vs monolith
If a monolithic system requires 1 full-time engineer for operations, approximately how many engineers might be needed to operate an equivalent microservices system with 10 independent services, assuming each service requires 0.3 engineer effort for operations?
A1 engineer
B5 engineers
C10 engineers
D3 engineers
Attempts:
2 left
💡 Hint
Multiply the number of services by the effort per service.

Practice

(1/5)
1. Which of the following best describes a monolithic architecture?
easy
A. Many small independent services communicating over a network
B. A database optimized for distributed transactions
C. A cloud service that automatically scales resources
D. A single large application where all components are tightly integrated

Solution

  1. Step 1: Understand monolithic architecture

    A monolithic architecture means all parts of the application are combined into one single unit.
  2. Step 2: Compare with other options

    Many small independent services communicating over a network describes microservices, C cloud scaling, and D databases, not monoliths.
  3. Final Answer:

    A single large application where all components are tightly integrated -> Option D
  4. Quick Check:

    Monolith = single big app [OK]
Hint: Monolith = one big app, microservices = many small apps [OK]
Common Mistakes:
  • Confusing microservices with monolith
  • Thinking monolith means cloud scaling
  • Mixing database types with architecture
2. Which syntax correctly describes a microservice in a system design diagram?
easy
A. Multiple boxes each labeled with a specific service name
B. A single box labeled 'App' containing all modules
C. A database icon connected to a single app box
D. A cloud icon with no internal components

Solution

  1. Step 1: Identify microservice representation

    Microservices are shown as multiple small boxes, each representing a service.
  2. Step 2: Eliminate incorrect options

    A single box labeled 'App' containing all modules shows a monolith, C shows database relation, D is too vague.
  3. Final Answer:

    Multiple boxes each labeled with a specific service name -> Option A
  4. Quick Check:

    Microservices = many small boxes [OK]
Hint: Microservices = many small boxes, monolith = one big box [OK]
Common Mistakes:
  • Choosing single box for microservices
  • Confusing database icons with services
  • Ignoring service labels
3. Given a system with a monolithic app and a microservices app, which scenario shows better scaling for microservices?
medium
A. Scaling the entire monolith when only one feature needs more resources
B. Scaling only the specific microservice that handles the busy feature
C. Scaling the database only in the monolith
D. Scaling the user interface layer in the monolith

Solution

  1. Step 1: Understand scaling in monolith vs microservices

    Monolith requires scaling the whole app, microservices allow scaling individual services.
  2. Step 2: Identify the efficient scaling method

    Scaling only the busy microservice is more efficient and flexible than scaling the entire monolith.
  3. Final Answer:

    Scaling only the specific microservice that handles the busy feature -> Option B
  4. Quick Check:

    Microservices scale individual parts [OK]
Hint: Microservices scale parts; monolith scales whole app [OK]
Common Mistakes:
  • Thinking monolith scales parts independently
  • Confusing database scaling with app scaling
  • Ignoring microservice granularity
4. A team tries to split a monolithic app into microservices but faces frequent communication failures. What is the most likely cause?
medium
A. They deployed all microservices on the same server
B. They used a single database for all microservices
C. They did not implement proper API contracts between services
D. They kept all code in one repository

Solution

  1. Step 1: Identify communication needs in microservices

    Microservices communicate over APIs; clear contracts are essential to avoid failures.
  2. Step 2: Analyze other options

    Using a single database or same server is possible but less likely to cause communication failures; code repo does not affect runtime communication.
  3. Final Answer:

    They did not implement proper API contracts between services -> Option C
  4. Quick Check:

    API contracts prevent communication failures [OK]
Hint: API contracts are key for microservice communication [OK]
Common Mistakes:
  • Blaming database sharing for communication errors
  • Assuming deployment location causes failures
  • Confusing code repo structure with runtime issues
5. A startup plans to build a new product with a small team and expects rapid changes. Which architecture is best and why?
hard
A. Monolith, because it is simpler to develop and deploy quickly
B. Microservices, because it allows independent scaling from day one
C. Monolith, because it supports multiple databases easily
D. Microservices, because it requires fewer resources initially

Solution

  1. Step 1: Consider team size and speed needs

    A small team with rapid changes benefits from simpler, faster development and deployment.
  2. Step 2: Evaluate architecture fit

    Monolith is simpler to build and deploy quickly; microservices add complexity and overhead not ideal for small teams initially.
  3. Final Answer:

    Monolith, because it is simpler to develop and deploy quickly -> Option A
  4. Quick Check:

    Small team + fast changes = monolith [OK]
Hint: Small teams start monolith for speed, microservices add complexity [OK]
Common Mistakes:
  • Choosing microservices for small teams without need
  • Assuming microservices always scale better initially
  • Ignoring development speed and team skills