Explore all courses in this category.
Explore all courses in this category.
Nguyễn Đình Cường
0 comment
09 Nov, 2026
Sửa nhanh một đoạn code rồi đẩy thẳng lên website đang chạy, và vài phút sau cả hệ thống báo lỗi. Đây là lý do mọi đội nghiêm túc đều tách môi trường. Mỗi môi trường có mục đích riêng và quan trọng nhất, sai sót ở môi trường này không làm hại môi trường khác.
Nhiều đội thêm môi trường test/QA riêng cho kiểm thử tự động và thủ công, hoặc môi trường xem trước tạm thời cho mỗi pull request.
Nguyên tắc quan trọng (nằm trong bộ nguyên tắc The Twelve-Factor App): mã nguồn giống nhau ở mọi môi trường, chỉ cấu hình thay đổi. Cấu hình như địa chỉ database, khóa API, chế độ gỡ lỗi nên được cung cấp qua biến môi trường chứ không ghi cứng trong code.
// Doc cau hinh tu bien moi truong
const config = {
port: process.env.PORT || 3000,
dbUrl: process.env.DATABASE_URL,
debug: process.env.APP_ENV !== 'production',
};
if (!config.dbUrl) {
throw new Error('Thieu DATABASE_URL');
}Đoạn mã kiểm tra cấu hình bắt buộc ngay khi khởi động, để lỗi hiện ra sớm thay vì khi người dùng đang dùng.
Tách môi trường là thói quen rẻ nhưng cứu rất nhiều sự cố. Hãy giữ mã giống nhau, đổi cấu hình qua biến môi trường, cho staging giống production nhất có thể và đừng bao giờ dùng chung dữ liệu hoặc khóa giữa các môi trường.
Muốn thực hành thiết lập quy trình dev, staging, production cho một dự án hoàn chỉnh, bạn có thể xem thêm các khóa học tại codebem.com.
Nguyễn Đình Cường
0 comment