3.3 KiB
Performance Optimization Examples
Real-world examples of performance bottlenecks and their optimizations across different layers.
Examples Overview
Algorithm Optimization
File: algorithm-optimization.md
Fix algorithmic bottlenecks:
- Nested loops O(n²) → Map lookups O(n)
- Inefficient array operations
- Sorting and searching optimizations
- Data structure selection (Array vs Set vs Map)
- Before/after performance metrics
Use when: Profiling shows slow computational operations, CPU-intensive tasks.
Database Optimization
File: database-optimization.md
Optimize database queries and patterns:
- N+1 query problem detection and fixes
- Eager loading vs lazy loading
- Query optimization with EXPLAIN ANALYZE
- Index strategy (single, composite, partial)
- Connection pooling
- Query result caching
Use when: Database queries are slow, high database CPU usage, query timeouts.
Caching Optimization
File: caching-optimization.md
Implement effective caching strategies:
- In-memory caching patterns
- Redis distributed caching
- HTTP caching headers
- Cache invalidation strategies
- Cache hit rate optimization
- TTL tuning
Use when: Repeated expensive computations, external API calls, static data queries.
Frontend Optimization
File: frontend-optimization.md
Optimize React/frontend performance:
- Bundle size reduction (code splitting, tree shaking)
- React rendering optimization (memo, useMemo, useCallback)
- Virtual scrolling for long lists
- Image optimization (lazy loading, WebP, responsive images)
- Web Vitals improvement (LCP, FID, CLS)
Use when: Slow page load, large bundle sizes, poor Web Vitals scores.
Backend Optimization
File: backend-optimization.md
Optimize server-side performance:
- Async/parallel processing patterns
- Stream processing for large data
- Request batching and debouncing
- Worker threads for CPU-intensive tasks
- Memory leak prevention
- Connection pooling
Use when: High server response times, memory leaks, CPU bottlenecks.
Quick Reference
| Optimization Type | Common Gains | Typical Fixes |
|---|---|---|
| Algorithm | 50-90% faster | O(n²) → O(n), better data structures |
| Database | 60-95% faster | Indexes, eager loading, caching |
| Caching | 80-99% faster | Redis, in-memory, HTTP headers |
| Frontend | 40-70% faster | Code splitting, lazy loading, memoization |
| Backend | 50-80% faster | Async processing, streaming, pooling |
Performance Impact Guide
High Impact (>50% improvement)
- Fix N+1 queries
- Add missing indexes
- Implement caching layer
- Fix O(n²) algorithms
- Enable code splitting
Medium Impact (20-50% improvement)
- Optimize React rendering
- Add connection pooling
- Implement lazy loading
- Batch API requests
- Optimize images
Low Impact (<20% improvement)
- Minify assets
- Enable gzip compression
- Optimize CSS selectors
- Reduce HTTP headers
Navigation
- Reference: Reference Index
- Templates: Templates Index
- Main Agent: performance-optimizer.md
Return to main agent