Cà Phê & Code

Nhấp một ngụm cà phê, viết thêm một dòng code

Cà Phê & Code là blog dành cho những người yêu công nghệ và lập trình. Nơi chia sẻ kiến thức coding, công cụ hữu ích, xu hướng công nghệ, kinh nghiệm phát triển phần mềm và những câu chuyện phía sau màn hình — tất cả được kể theo cách gần gũi, dễ hiểu, như một cuộc trò chuyện bên tách cà phê.

Bài viết mới nhất

Tổng 1741 bài
Cơ sở dữ liệu 22/09/2026 6 phút

Transaction ID wraparound trong PostgreSQL: hiểm họa 32-bit và VACUUM freeze

Transaction id là số 32-bit, cửa sổ dùng được chỉ khoảng 2 tỉ. Nếu dòng cũ không được freeze trước khi bộ đếm tràn, chúng bỗng trông như tương lai và biến mất — thảm họa. Đo thật cách theo dõi age(datfrozenxid) và vì sao VACUUM bắt buộc kể cả bảng chỉ đọc. PostgreSQL 16.

Cơ sở dữ liệu 22/09/2026 5 phút

COPY vs INSERT hàng loạt trong PostgreSQL: nạp dữ liệu nhanh gấp hàng chục lần

Nạp khối lượng lớn bằng INSERT từng dòng tự commit là sai lầm đắt nhất. Đo thật: 20.000 dòng qua INSERT autocommit mất 2,4 giây (fsync mỗi dòng) so với COPY 0,046 giây — nhanh 52 lần. Ở 200k dòng: COPY 29 ms so với INSERT từng dòng 290 ms. Vì sao COPY nhanh và cách dùng đúng cho ETL. PostgreSQL 16.

Cơ sở dữ liệu 22/09/2026 6 phút

Tối ưu PostgreSQL bền vững: một vòng lặp, không phải một lần chỉnh rồi quên

Bài chốt series: tối ưu không có đích đến mà là một chu trình đo-sửa-xác nhận-giám sát lặp lại. Kèm health snapshot thật của một database khoẻ mạnh và ba nguyên tắc xuyên suốt 132 bài — đo đừng đoán, hiểu đánh đổi, sửa gốc không vá ngọn. PostgreSQL 16.

Cơ sở dữ liệu 22/09/2026 6 phút

Migration lớn không downtime trong PostgreSQL: đổi schema an toàn trên bảng đang chạy

Đổi schema trên bảng production đang phục vụ mà không gây downtime — mấu chốt là mức khoá và thao tác có viết lại bảng không. Bài này đo thật: ADD COLUMN default tức thì, đổi kiểu cột khoá cả bảng, CREATE INDEX CONCURRENTLY không chặn ghi, và NOT VALID cho ràng buộc. PostgreSQL 16.

Cơ sở dữ liệu 22/09/2026 5 phút

Dashboard nhanh lúc vắng, chậm giờ cao điểm: tìm nút thắt dưới tải đồng thời

Một truy vấn chạy 25 mili giây khi test một mình lại thành 266 mili giây khi 32 người cùng mở dashboard. Bài này đo thật sự suy giảm theo số client, chẩn đoán bằng wait_event, và một cách sửa bất ngờ: tắt parallel query giúp nhanh 1,7 lần dưới tải cao. PostgreSQL 16.