Skip to content

Performance & Cost Tuning Guide

This guide provides performance and cost optimization strategies for LocalCloudLab.

1. Application-Level Tuning

Reduce DB load

  • Add caching (Redis)
  • Use async methods
  • Batch queries
  • Add indexes

Reduce latency

  • Use connection pooling
  • Disable sync-over-async
  • Avoid blocking I/O

2. Kubernetes Tuning

Right-size pods

Search API:

requests:
  cpu: 200m
  memory: 256Mi
limits:
  cpu: 600m
  memory: 512Mi

HPA tuning

Set target CPU:

averageUtilization: 70

Reduce pod restarts

  • Tune liveness probes
  • Tune readiness probes
  • Add startup probes

3. Envoy Gateway Tuning

Increase timeouts

timeout:
  request: 20s

Retry policy

retry:
  attempts: 3
  retryOn:
  - connection-failure

Connection pooling

Tune via BackendPolicy.

4. Database Tuning

Add indexes

Tune vacuum

Use connection pooling

Add read replicas (future)

5. Redis Tuning

Use in-memory eviction policy

maxmemory-policy allkeys-lru

Enable persistence:

appendonly yes

6. Cost Optimization

Reduce logs to Loki

  • Avoid debug logs in production

Use autoscaling

  • Scale down during low traffic

Node size

Choose:

  • 4 vCPU / 16 GB RAM → ideal
  • Scale horizontally if needed

  • Summary

✔ Faster services ✔ Lower database load ✔ Lower cloud cost ✔ Scalable infrastructure