118 lines
5.3 KiB
Markdown
118 lines
5.3 KiB
Markdown
---
|
|
allowed-tools: Read, Bash, Grep, Glob
|
|
argument-hint: [api-type] | --rest | --graphql | --grpc
|
|
description: Comprehensive API performance optimization with response time reduction, throughput improvement, and scalability enhancements
|
|
---
|
|
|
|
# Optimize API Performance
|
|
|
|
Analyze and optimize API performance for faster response times, higher throughput, and better scalability: **$ARGUMENTS**
|
|
|
|
## Instructions
|
|
|
|
1. **API Performance Analysis**
|
|
- Analyze current API response times and throughput metrics
|
|
- Identify slowest endpoints and bottleneck patterns
|
|
- Profile API request/response lifecycle and processing time
|
|
- Document baseline performance metrics across different load scenarios
|
|
- Map API dependency chains and external service calls
|
|
|
|
2. **Request/Response Optimization**
|
|
- Optimize request parsing and validation logic
|
|
- Implement efficient response serialization and compression
|
|
- Minimize payload sizes through selective field inclusion
|
|
- Configure appropriate HTTP headers and caching directives
|
|
- Optimize request routing and middleware processing
|
|
|
|
3. **Database Query Optimization**
|
|
- Identify and optimize slow database queries
|
|
- Implement query result caching strategies
|
|
- Add appropriate database indexes for API queries
|
|
- Optimize database connection pooling and management
|
|
- Implement query batching and aggregation where applicable
|
|
|
|
4. **Caching Strategy Implementation**
|
|
- Implement multi-level caching (in-memory, Redis, CDN)
|
|
- Configure cache invalidation strategies
|
|
- Set up API response caching with appropriate TTL values
|
|
- Implement cache warming and preloading strategies
|
|
- Monitor cache hit ratios and effectiveness
|
|
|
|
5. **Rate Limiting and Throttling**
|
|
- Implement intelligent rate limiting based on usage patterns
|
|
- Configure adaptive throttling for different user tiers
|
|
- Set up queue management for handling traffic spikes
|
|
- Implement circuit breaker patterns for external services
|
|
- Monitor and adjust rate limits based on performance metrics
|
|
|
|
6. **Concurrency and Parallelization**
|
|
- Implement proper async/await patterns for I/O operations
|
|
- Optimize thread pool configuration and management
|
|
- Implement parallel processing for independent operations
|
|
- Configure connection pooling for optimal concurrency
|
|
- Use streaming for large data transfers
|
|
|
|
7. **API Gateway and Load Balancing**
|
|
- Configure API gateway for optimal routing and load distribution
|
|
- Implement health checks and automatic failover
|
|
- Set up load balancing algorithms for even traffic distribution
|
|
- Configure request/response transformation at gateway level
|
|
- Implement API versioning and traffic splitting
|
|
|
|
8. **Monitoring and Observability**
|
|
- Set up comprehensive API performance monitoring
|
|
- Implement distributed tracing for request lifecycle visibility
|
|
- Configure performance metrics collection and alerting
|
|
- Monitor API error rates and response time percentiles
|
|
- Set up real-time performance dashboards
|
|
|
|
9. **Security Performance Optimization**
|
|
- Optimize authentication and authorization processes
|
|
- Implement efficient JWT validation and caching
|
|
- Configure SSL/TLS termination for optimal performance
|
|
- Optimize API key validation and rate limiting
|
|
- Implement security middleware performance tuning
|
|
|
|
10. **Content Delivery Optimization**
|
|
- Configure CDN for static API responses and assets
|
|
- Implement geographic load balancing and edge caching
|
|
- Optimize API endpoint geographical distribution
|
|
- Set up content compression and optimization
|
|
- Configure cache headers for optimal CDN performance
|
|
|
|
11. **API Design Optimization**
|
|
- Review and optimize API endpoint design patterns
|
|
- Implement efficient pagination and filtering strategies
|
|
- Optimize API versioning and backward compatibility
|
|
- Design APIs for optimal client-side caching
|
|
- Implement GraphQL query optimization (if applicable)
|
|
|
|
12. **Load Testing and Performance Validation**
|
|
- Implement comprehensive load testing scenarios
|
|
- Configure performance regression testing in CI/CD
|
|
- Set up chaos engineering tests for resilience validation
|
|
- Monitor API performance under various load conditions
|
|
- Validate performance optimizations with realistic test data
|
|
|
|
13. **Scalability Planning**
|
|
- Design API architecture for horizontal scaling
|
|
- Implement auto-scaling policies based on performance metrics
|
|
- Configure database scaling strategies (read replicas, sharding)
|
|
- Plan for traffic growth and capacity requirements
|
|
- Implement graceful degradation strategies
|
|
|
|
14. **Third-Party Service Optimization**
|
|
- Optimize external API calls and integrations
|
|
- Implement retry policies and exponential backoff
|
|
- Configure timeout settings for external services
|
|
- Set up fallback mechanisms for service unavailability
|
|
- Monitor third-party service performance impact
|
|
|
|
15. **Performance Testing Automation**
|
|
- Set up automated performance testing pipelines
|
|
- Configure performance benchmarking and comparison
|
|
- Implement performance regression detection
|
|
- Set up load testing in staging environments
|
|
- Create performance test data management strategies
|
|
|
|
Focus on optimizations that provide the highest impact on response times and throughput. Prioritize changes that improve user experience and system scalability while maintaining reliability. |