Google Cloud Waf Performance Optimization

Generates performance-focused guidance for Google Cloud workloads based on the design principles and recommendations in the Performance Optimization pillar of the Google Cloud Well-Architected Framework (WAF). Use this skill to evaluate a workload, identify performance requirements, and provide actionable recommendations for resource allocation, modular design, and elasticity.

Published by @google·from google/skills·0 agent reads / 30d·0 saves·

Google Cloud Well-Architected Framework skill for the Performance Optimization pillar

Overview

The Performance Optimization pillar of the Google Cloud Well-Architected Framework provides principles and recommendations to help you design, build, and operate high-performing workloads. It focuses on efficiently allocating resources, leveraging modular architectures, and using data-driven insights to continuously monitor and improve performance as your business needs evolve.

Core principles

The recommendations in the performance optimization pillar of the Well-Architected Framework are aligned with the following core principles:

  • Plan resource allocation: Carefully select and configure the compute, storage, and networking resources that best match the specific requirements of your workload. Grounding document: https://docs.cloud.google.com/architecture/framework/performance-optimization/plan-resource-allocation

  • Take advantage of elasticity: Utilize automated scaling and serverless technologies to dynamically adjust resource capacity in response to real-time demand fluctuations. Grounding document: https://docs.cloud.google.com/architecture/framework/performance-optimization/elasticity

  • Promote modular design: Architect systems using independent, loosely coupled components to enhance scalability and allow individual parts to be optimized without affecting the entire system. Grounding document: https://docs.cloud.google.com/architecture/framework/performance-optimization/promote-modular-design

  • Continuously monitor and improve performance: Implement robust observability to identify bottlenecks and use performance data to drive iterative enhancements throughout the software development lifecycle. Grounding document: https://docs.cloud.google.com/architecture/framework/performance-optimization/continuously-monitor-and-improve-performance

Relevant Google Cloud products

The following are examples of Google Cloud products and features that are relevant to performance optimization:

  • Compute and scaling

    • Compute Engine (MIGs): Managed instance groups that support autoscaling and load balancing for VM-based workloads.
    • Google Kubernetes Engine (GKE): Provides container orchestration with horizontal and vertical pod autoscaling.
    • Cloud Run: A fully managed serverless platform that automatically scales containers to zero or up based on traffic.
  • Data and caching

    • Cloud CDN: Low-latency content delivery network to cache static and dynamic content closer to end-users.
    • Memorystore: Managed in-memory data store for Valkey and Redis to provide sub-millisecond data access.
    • Bigtable: NoSQL database service for analytical and operational workloads requiring low latency and high throughput.
    • Spanner: RDBMS that provides global consistency, high availability, and horizontal scaling for mission-critical transactional applications.
  • Performance analysis and monitoring

    • Cloud Trace: Distributed tracing system that helps identify latency bottlenecks.
    • Cloud Profiler: Continuous CPU and memory profiling to identify resource-heavy application code.
    • Cloud Monitoring: Provides dashboards and alerts based on performance KPIs like latency and throughput.

Workload assessment questions

Ask appropriate questions to understand the performance-related requirements and constraints of the workload and the user's organization. Choose questions from the following list:

  • Plan resource allocation

    • When initially provisioning compute resources for a new application, which approach do you use to determine the required capacity for expected peak loads?
    • Which caching strategies (browser, in-memory, CDN, database) do you utilize to improve performance and responsiveness?
    • How do you optimize the performance of your data storage solutions (e.g., SSD vs HDD, storage classes) for your applications?
  • Promote modular design

    • Which architectural patterns (microservices, asynchronous messaging, stateless servers) do you employ to enhance performance and resilience?
    • How do you design your application to minimize the impact of failures in one part of the system on other parts?
  • Continuously monitor and improve performance

    • How frequently do you review and analyze the performance of your production applications and infrastructure?
    • Which tools or techniques (APM, distributed tracing, load testing) do you use to proactively identify and diagnose performance bottlenecks?
    • How do you incorporate performance considerations into your software development lifecycle (SDLC)?
  • Take advantage of elasticity

    • Which methods do you use to manage and optimize the cost of your cloud resources while maintaining performance?
    • How do you typically handle sudden spikes in traffic or workload on your applications?

Validation checklist

Use the following checklist to evaluate the architecture's alignment with performance optimization recommendations:

  • Resource allocation

    • Initial provisioning is based on load testing or historical data rather than general estimates.
    • Caching is implemented at multiple layers (CDN, in-memory, or browser) to offload backend systems.
    • Storage types (SSD/HDD) and classes are selected based on the specific I/O requirements of the workload.
  • Modular design

    • The architecture uses microservices or decoupled components to allow independent scaling.
    • Circuit breakers or bulkheads are implemented to isolate failures and prevent performance degradation across the system.
  • Monitoring and continuous improvement

    • Automated dashboards and alerts are configured for key performance indicators (KPIs).
    • Distributed tracing and profiling tools are used to identify code-level bottlenecks.
    • Performance testing (unit and integration) is integrated into the software development lifecycle.
  • Elasticity

    • Auto-scaling rules are configured and validated to handle variable demand.
    • The architecture leverages serverless or managed services to dynamically match capacity to load.
    • Resource utilization is reviewed regularly to eliminate idle overhead and balance cost with performance.

More on the bench

SKILL0

Oncall Runbook

Write an on-call runbook for a service — covering alert definitions, escalation paths, common incident responses, and on-call handoff procedures. Use when asked to write an on-call guide, create alert runbooks, document escalation procedures, or prepare an on-call handoff document. Produces a structured on-call runbook with per-alert response procedures, escalation matrix, diagnostic commands, and handoff template.

software-engineering+2
1
SKILL0

Monitoring Setup Guide

Write a monitoring setup guide for a service — defining what to measure, how to alert on it, and how to build the observability stack covering the four golden signals, business metrics, log strategy, distributed tracing, alerting rules, dashboard layout, and observability debt. Use when asked to set up monitoring for a service, define alerting strategy, write an observability plan, create a dashboard specification, or document logging standards for a team. Produces a metric definitions table, alert rules specification, dashboard layout wireframe, log schema, tracing setup checklist, and monitoring gap analysis.

software-engineering+2
1
SKILL0

CI CD Pipeline Builder

Generate pragmatic CI/CD pipelines from detected project stack signals — fast baseline generation, repeatable checks, environment-aware deployment stages. Use when setting up CI for a new project, refactoring existing pipelines, or standardizing deployment workflows across multiple repos.

software-engineering+2
1