Xin chào, tôi là Văn Ngọc Tân — backend developer người Việt. Blog này là nơi tôi ghi lại những kiến thức, kinh nghiệm và bài học thực tế về Docker, Redis, Node.js và thiết kế hệ thống, đúc kết qua nhiều năm làm việc.
# kiểm tra kết nối Redis$redis-cli PING
PONG
# danh sách container đang chạy$docker ps --format "table {{.Names}} {{.Status}}"
NAMES STATUS
api Up 3 days
worker Up 3 days
53+
bài viết kỹ thuật
4
series lộ trình
53
bài viết trong series
Lộ trình học
Học theo Series, không học mớ hỗn độn
Mỗi series là một lộ trình có cấp độ, từ nền tảng đến nâng cao, giúp bạn nắm vững từng mảng kiến thức một cách có hệ thống.
Redis
29 bài viết
Từ câu lệnh cơ bản đến cấu trúc dữ liệu nâng cao, giúp bạn dùng Redis đúng cách trong hệ thống thực tế.
Một request lỗi làm treo event loop, một promise reject không ai bắt khiến Node.js âm thầm chết lúc 3 giờ sáng. Error handling là một hệ thống: bắt đúng chỗ, phân loại lỗi, không để app chết im lặng.
Máy 8 CPU core nhưng ứng dụng Node.js mặc định chỉ dùng một luồng — lãng phí tới 87% sức mạnh. Cluster Module và PM2 giúp chạy đa tiến trình, tận dụng trọn CPU, tự phục hồi và reload không downtime.
Ứng dụng chạy ngon trên máy dev nhưng lên production lại "dở chứng" vì kiến trúc không thiết kế cho môi trường thật? 12-Factor App là bộ quy tắc vàng giúp bạn deploy, scale và vận hành ở bất kỳ đâu.
Ứng dụng chạy ngon ở dev nhưng lên production, Redis vừa restart là mọi request treo 30 giây rồi trả 500. Vấn đề nằm ở cách quản lý kết nối — bài này dạy bạn cấu hình ioredis để hệ thống sống khỏe.
Ứng dụng giao đồ ăn hiện 20 quán quanh mình, sắp xếp theo khoảng cách chỉ trong mili giây — không cần database spatial hay Google Maps API, chỉ với vài lệnh Geo xây trên nền Sorted Sets.