Day 10 - Scaling and Performance

Day 10: Scaling and Performance

Learning Objectives

Essential Questions

Materials Needed

Vocabulary

Procedure (50 minutes)

Opening (8 minutes)

  1. Review and Connection (3 minutes)

    • Review fault tolerance and redundancy from previous lesson
    • Connect to today's focus on handling growth and maintaining performance
  2. Warm-up Activity (5 minutes)

    • Ask students: "What happens to a website when it suddenly becomes popular?"
    • Discuss challenges that arise with rapid growth in users or data
    • Create a class list of potential scaling issues
    • Introduce the concept of scalability

Main Activities (32 minutes)

  1. Lecture: Network Scaling Challenges (12 minutes)

    • Define scalability as the capacity for a system to handle growth
    • Explain key scaling approaches:
      • Vertical scaling: Adding more resources to existing systems
      • Horizontal scaling: Adding more systems
      • Geographic distribution: Placing resources closer to users
    • Discuss common scaling challenges:
      • Increased load on servers
      • Network congestion
      • Database bottlenecks
      • Single points of failure under stress
      • Coordination overhead
    • Explain technologies that enable scaling:
      • Load balancers: Distributing traffic across servers
      • Content Delivery Networks: Caching content closer to users
      • Distributed databases: Spreading data across multiple systems
      • Cloud computing: Flexible resource allocation
    • Discuss performance metrics:
      • Latency: Time for data to travel
      • Bandwidth: Maximum data transfer rate
      • Throughput: Actual data transfer rate
      • Response time: Time to complete a request
  2. Exploration: Content Delivery Networks (8 minutes)

    • Explain how CDNs work:
      • Distributed servers across geographic locations
      • Caching static content
      • Routing users to the closest server
      • Absorbing traffic spikes
    • Demonstrate CDN benefits with examples:
      • Before/after page load times
      • Traffic handling during peak events
      • Protection against certain attacks
    • Show how CDNs use DNS and routing to direct users
    • Discuss how major websites and services use CDNs
  3. Activity: Analyzing Performance Bottlenecks (12 minutes)

    • Divide class into small groups
    • Provide each group with a case study of a scaling challenge
    • Groups analyze the scenario to:
      • Identify performance bottlenecks
      • Determine root causes
      • Propose scaling solutions
      • Consider trade-offs of different approaches
    • Groups create a brief presentation of their analysis
    • Share and discuss different approaches to scaling

Closing (10 minutes)

  1. Discussion: Future Internet Challenges (5 minutes)

    • Lead a discussion on emerging challenges for Internet scaling:
      • Growing number of connected devices (IoT)
      • Increasing video and streaming traffic
      • Cloud gaming and virtual reality
      • Global connectivity in developing regions
    • Discuss potential solutions and technologies
    • Address any misconceptions about network capacity
  2. Exit Ticket: Performance Improvement (5 minutes)

    • Present students with a network performance scenario
    • Students propose solutions to improve performance
    • Students explain the benefits of their approach
    • Students identify potential trade-offs or new challenges
    • Collect responses before students leave

Assessment

Differentiation

For Advanced Students

For Struggling Students

Homework/Extension

Teacher Notes