Zero-downtime deployment — Blue-Green và Canary thực chiến
Blue-Green và Canary release giúp deploy không downtime, rollback nhanh. Kèm ví dụ nginx + docker-compose và kinh nghiệm thực tế.
THE ENGINEERING JOURNAL
Các bài viết về engineering.
Blue-Green và Canary release giúp deploy không downtime, rollback nhanh. Kèm ví dụ nginx + docker-compose và kinh nghiệm thực tế.
Property-based testing thay vì đoán input, máy tự sinh hàng trăm ngàn case để tìm bug — kèm ví dụ Go thực chiến.
Idempotency key giúp API xử lý an toàn khi client retry: trùng request vẫn trả kết quả cũ, không bao giờ trừ tiền 2 lần.
Profile CPU, heap và goroutine bằng pprof trong Go: cách bật endpoint, đọc flame graph và kinh nghiệm bắt bottleneck thực tế.
Hiểu Hexagonal Architecture (Ports & Adapters) qua ví dụ Go: tách business logic khỏi framework và database, code dễ test và dễ thay đổi hơn hẳn.
Migrate schema Postgres an toàn trên production: expand & contract, backfill theo batch, chuyển code từng phase — không cần tắt service.
Generics trong TypeScript qua ví dụ thực tế: generic function, extends, keyof, infer và cách tránh over-engineering khi áp dụng vào dự án.
Thundering herd là gì? Khi một key cache 'nóng' hết hạn, hàng chục nghìn request cùng đổ vào database. Kèm cách chặn: singleflight, Redis lock và jitter TTL.
Học multi-stage build trong Docker để giảm image từ 1.2GB xuống 90MB — kèm Dockerfile mẫu, tricks layer cache và kinh nghiệm deploy VPS thực tế.
Testcontainers chạy PostgreSQL, Redis thật trong Docker cho integration test — hết cảnh mock giả, test sát production hơn. Kèm ví dụ Go.