--- name: cost-optimization-patterns description: Cloud cost optimization, token/API cost tracking, build time optimization, and FinOps patterns --- # Cost Optimization Patterns ## Cloud Cost Optimization ### Right-Sizing ```bash # AWS - Compute Optimizer önerileri aws compute-optimizer get-ec2-instance-recommendations # CPU/Memory utilization < 20% → downsize # CPU/Memory utilization > 80% → upsize veya auto-scale ``` ### Instance Strategy | Strateji | Tasarruf | Risk | Use Case | |----------|---------|------|----------| | On-Demand | 0% | Düşük | Değişken workload | | Reserved (1yr) | %30-40 | Orta | Steady-state | | Reserved (3yr) | %50-60 | Yüksek | Uzun vadeli | | Spot/Preemptible | %60-90 | Yüksek | Batch, CI/CD | | Savings Plans | %30-50 | Düşük | Flexible commitment | ### Serverless Cost ``` Lambda cost = (requests × $0.20/1M) + (GB-seconds × $0.0000166) Optimizasyon: 1. Memory right-sizing (power tuning) 2. Provisioned concurrency (cold start vs cost tradeoff) 3. ARM architecture (%20 ucuz) 4. Batch processing (SQS batch size) ``` ## LLM/API Token Cost ```typescript // Token maliyet takibi const MODEL_COSTS = { 'claude-opus-4-6': { input: 15.0, output: 75.0 }, // per 1M tokens 'claude-sonnet-4-6': { input: 3.0, output: 15.0 }, 'claude-haiku-4-5': { input: 0.80, output: 4.0 } } as const function estimateCost(model: string, inputTokens: number, outputTokens: number) { const costs = MODEL_COSTS[model] return (inputTokens * costs.input + outputTokens * costs.output) / 1_000_000 } ``` ## Build Time Optimization | Teknik | Tasarruf | Karmaşıklık | |--------|---------|-------------| | Dependency caching | %30-50 | Düşük | | Parallel test execution | %40-60 | Düşük | | Incremental builds | %50-70 | Orta | | Docker layer caching | %20-40 | Düşük | | Affected-only (monorepo) | %60-80 | Orta | ## Database Cost ```sql -- Pahalı query'leri bul SELECT query, calls, mean_exec_time, total_exec_time FROM pg_stat_statements ORDER BY total_exec_time DESC LIMIT 20; -- Unused index'leri bul (gereksiz storage + write overhead) SELECT indexrelname, idx_scan FROM pg_stat_user_indexes WHERE idx_scan = 0 AND indexrelname NOT LIKE '%pkey%'; ``` ## Checklist - [ ] Cloud cost alerting aktif (budget alarm) - [ ] Unused resources temizlenmiş - [ ] Right-sizing review (aylık) - [ ] Reserved/Spot instance kullanımı - [ ] CDN cache hit ratio >90% - [ ] Database query optimization - [ ] Build cache aktif - [ ] Tag-based cost allocation ## Anti-Patterns - Over-provisioned "just in case" resources - Unused EBS volumes, idle load balancers - Data transfer between regions (pahalı) - CloudWatch log retention unlimited - Her environment production-grade