Sau khi đọc Storing Images in DB - Yea or Nay? Tôi nghĩ rằng hệ thống tệp là nơi phù hợp để lưu trữ hình ảnh. Nhưng tôi muốn biết làm thế nào bạn xử lý sao lưu/phiên bản kiểm soát của hình ảnh tải lên trong môi trường khác nhau của bạn (dev/giai đoạn/prod) và cân bằng tải mạng?Kiểm soát phiên bản ảnh đã tải lên hệ thống tệp
Các sự cố này khá dễ xử lý khi làm việc với cơ sở dữ liệu, ví dụ: để tạo bản sao lưu từ môi trường sản xuất và khôi phục DB trong môi trường phát triển.
Bạn nghĩ gì về việc sử dụng ví dụ git để xử lý kiểm soát phiên bản tệp đã tải lên, ví dụ:
Môi trường sản xuất:
- Một hình ảnh được tải lên một thư mục chia sẻ tại máy chủ web.
- dữ liệu Meta được lưu trữ trong cơ sở dữ liệu
- Những hình ảnh được tự động thêm vào một kho git
Developer tại nơi làm việc:
- Kiểm tra ra mã nguồn.
- Chạy tập lệnh để khôi phục cơ sở dữ liệu.
- Chạy tập lệnh để tải các hình ảnh mới nhất.
Tôi nghĩ giải pháp trên khá trơn tru cho nhà phát triển, hình ảnh sẽ nằm dưới sự kiểm soát phiên bản và môi trường có thể được tách biệt với nhau.
Âm thanh như ý tưởng hay. – grenade
"sử dụng kho lưu trữ hoàn toàn tách biệt với mã nguồn": điều này không tương thích với cách tiếp cận mô-đun con: ý tưởng vẫn là mã repo nguồn để tham chiếu một cam kết đã cho của repo hình ảnh, nhưng sau đó (repo hình ảnh) vẫn một repo "hoàn toàn tách biệt". – VonC