#devops
11 bài viết về chủ đề này
OOMKilled — Pod bị kill dù RAM còn thừa
Pod bị OOMKilled dù node còn dư RAM? Hiểu request vs limit, cgroup v2, GOMEMLIMIT và cách debug exit code 137 trong Kubernetes.
GitHub Actions — Pipeline CI/CD tự động cho dự án thật sự
CI/CD bằng GitHub Actions từ A đến Z: workflow syntax, cache dependency, matrix build, secrets và deployment tự động lên production an toàn.
Terraform cho người mới — Quản lý hạ tầng bằng code từ số 0
Infrastructure as Code với Terraform: state, plan/apply, module. Kèm ví dụ code và kinh nghiệm thực tế để quản lý hạ tầng như code.
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ế.
Docker multi-stage build — Cắt image từ 1.2GB xuống 90MB
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ế.
Observability cho Backend — OTel, Metrics & Tracing thực chiến
Log chỉ kể chuyện gì xảy ra, metrics & tracing mới trả lời vì sao. Setup OpenTelemetry trong Go: tracer, span, histogram — kèm bài học thực tế.
Container & Deployment Microservices — K8s & Progressive Delivery
Tổng quan deployment microservices: container Docker, Kubernetes orchestration, progressive delivery (canary, blue-green, feature flags).
Docker Multi-Stage Builds — Từ 1.2GB xuống 15MB
Học cách dùng multi-stage build trong Docker để giảm kích thước image Go app từ 1.2GB xuống chỉ 15MB — nhanh hơn, an toàn hơn khi deploy.
Docker Multi-Stage Builds — image Go từ 1GB xuống 20MB
Docker multi-stage builds giảm image Go từ 1GB xuống 20MB. Học cách build nhẹ, an toàn, nhanh với Dockerfile mẫu và kinh nghiệm production.
PgBouncer & Connection Pooling — vì sao app chậm dù DB vẫn xanh?
Connection pooling không chỉ là chuyện "mở nhiều kết nối". Học cách dùng PgBouncer, tune pool size đúng cách và tránh 5 sai lầm thường gặp.