Website được thiết kế tối ưu cho thành viên chính thức. Hãy Đăng nhập hoặc Đăng ký để truy cập đầy đủ nội dung và chức năng. Nội dung bạn cần không thấy trên website, có thể do bạn chưa đăng nhập. Nếu là thành viên của website, bạn cũng có thể yêu cầu trong nhóm Zalo "CNTT" các nội dung bạn quan tâm.

Bài 20. Backup PHP / Application Runtime

ICT

1. Vì sao Application Runtime quan trọng trong phục hồi hệ thống?

Trong nhiều sự cố thực tế:

  • Database đã restore thành công

  • Code đã triển khai đầy đủ

  • Web server chạy ổn định

Nhưng ứng dụng vẫn:

  • Lỗi trắng trang

  • Timeout

  • Hành vi khác trước

Nguyên nhân thường nằm ở:

Môi trường runtime không khớp với lúc hệ thống còn hoạt động.

📌 Backup runtime giúp tái tạo đúng hành vi ứng dụng, không chỉ “chạy được”.


2. Runtime là gì trong bối cảnh backup?

Application Runtime bao gồm:

  • Phiên bản ngôn ngữ (PHP 8.1, 8.2…)

  • Trình quản lý tiến trình (PHP-FPM)

  • Extension, module

  • Tham số hiệu năng

  • Logic chạy nền (CLI)

Runtime không phải code, nhưng quyết định code chạy như thế nào.


3. Backup PHP Runtime

3.1. Cấu hình PHP bắt buộc phải backup

  • /etc/php/*/fpm/php.ini

  • /etc/php/*/cli/php.ini

  • /etc/php/*/fpm/pool.d/

📌 pool.d rất quan trọng trong hệ thống nhiều site.


3.2. Các tham số cần chú ý

  • memory_limit

  • max_execution_time

  • upload_max_filesize

  • post_max_size

  • date.timezone

  • opcache.*


3.3. Danh sách extension đã cài

  • php -m

  • Ghi lại package tương ứng

📌 Không backup binary extension, chỉ backup danh sách và phiên bản.


4. Backup các Application Runtime khác

4.1. Node.js

  • Version Node.js

  • package.json

  • package-lock.json

  • Process manager (PM2 config)


4.2. Java

  • JVM version

  • JVM options

  • Service config


4.3. Python

  • Python version

  • requirements.txt

  • Virtual environment config

📌 Runtime khác nhau → chiến lược backup khác nhau, nhưng tư duy giống nhau.


5. Những gì KHÔNG cần backup

  • Binary runtime

  • Package cache

  • Compiled artifacts

📌 Những thứ này có thể cài lại, backup làm nặng hệ thống.


6. Restore Application Runtime đúng cách

Trình tự khuyến nghị:

  1. Cài đúng phiên bản runtime

  2. Restore config

  3. Cài đúng extension / dependency

  4. Test CLI

  5. Test qua web server

📌 Không restore config trước khi runtime tồn tại.


7. Sai lầm phổ biến khi backup runtime

  • Chỉ backup code, quên runtime

  • Backup php.ini nhưng không backup pool config

  • Không ghi chú version runtime

  • Restore sai phiên bản


8. Checklist backup Application Runtime

Bắt buộc

  • Config runtime

  • Pool / process config

  • Danh sách module

Theo nhu cầu

  • Performance tuning

  • Background job config


9. Liên hệ với hệ thống thực tế

Trong hệ thống:

  • Drupal

  • Webapp nội bộ

  • API

Runtime quyết định:

  • Hiệu năng

  • Ổn định

  • Tính tương thích

📌 Backup runtime là điều kiện để restore ứng dụng không lỗi ngầm.


 

Code có thể giống nhau, nhưng runtime khác nhau sẽ tạo ra hệ thống khác nhau.

Backup runtime không nhằm sao chép phần mềm,
mà nhằm tái tạo môi trường thực thi chính xác khi phục hồi.