Notes
Short write-ups from backend work: things that took me an afternoon to figure out and should take the next person five minutes.
- #spring
Graceful shutdown for Spring Boot on KubernetesThree settings that stop rolling deploys from dropping requests.
- #postgres
Adding an index to a busy PostgreSQL tableCREATE INDEX CONCURRENTLY, the invalid-index trap, and how to run it from a migration.
- #kafka
An idempotent Kafka consumer with one extra tableAt-least-once delivery means duplicates. A unique key in the same transaction handles them.
- #postgres
Where the database time goes: pg_stat_statementsOne extension and one query that answer most 'the database is slow' tickets.
- #docker
Layered Docker images for Spring BootSplit the fat jar into layers so a code change pushes kilobytes, not the whole image.
- #ci
Maven cache in GitLab CI that actually hitsMove the local repository inside the project directory and key the cache on pom.xml.
- #kubernetes
kubectl commands I keep forgettingA short list for the moments when something is wrong and the dashboard is not helping.