HuyPV
Thursday, September 6, 2018
Làm web bán hàng. Trộm vía cửa hàng online phát triển, ngày đêm vẫn có khách vào mua. Nhưng gần đây cú vọ nhiều, hay giao dịch gần sáng, mà lúc đó lại chạy cronjob backup database (DB). Bảng to, dữ liệu lớn nên backup khá lâu. Thành ra khách giao dịch bị quay quay xong thanh toán đơn hàng không thành công do db bị lock, đếch update được trạng thái đơn hàng. Phải làm sao giải quyết vấn đề này bây giờ?
Cách 1: Đéo backup nữa =))
Cách 2: Treo biển "Ngoài giờ phục vụ" để đuổi khách
2 cách trên ưu điểm là rất dễ thực hiện :)) nhưng hiệu quả kinh tế lại ko cao, làm mất khách, mất doanh thu của cửa hàng. Nhân viên thì có thể thích nhưng sếp thì đéo thích. Tóm lại ko ko duyệt 2 cách này.
Cách 3: Live backup ko gây lock bằng cách backup từ slave
Cơ chế là có 1 con DB slave đồng bộ với con DB chính (master). Khi backup thì tạm tắt đồng bộ, rồi backup từ con slave. Backup xong thì bật lại đồng bộ. Thế là trong lúc backup con slave thì con master vẫn hoạt động bình thường ko bị lock liếc gì cả
Nhược điểm là tốn thêm 1 con server để chạy con slave!
Title:
Backup DB làm lock không giao dịch được
Description:
DB to phết, gần sáng backup tình cờ có khách vào giao dịch lúc nửa đêm thế là khách thấy web quay quay không thực hiện được. Giải quyết thế nào đây?
...
Rating:
4