Chúng tôi đang nhận thấy một mô hình thú vị cho sự HADR_SYNC_COMMIT
chờ đợi trong môi trường của chúng tôi. Chúng tôi có một bản sao ba; một chính, một trong những đồng bộ thứ cấp và một async thứ trong một trung tâm dữ liệu và chúng tôi chỉ thêm ba hơn ASYNC bản sao trong một trung tâm dữ liệu (~ 2.400 dặm).
Kể từ đó, chúng tôi đã bắt đầu nhận thấy sự gia tăng rất lớn về sự HADR_SYNC_COMMIT
chờ đợi. Khi chúng tôi xem xét các phiên hoạt động, chúng tôi thấy một loạt các COMMIT TRANSACTION
truy vấn đang chờ trên bản sao SYNC
Từ ảnh chụp màn hình, chúng ta có thể thấy rõ có một bước nhảy HADR_SYNC_COMMIT
chờ đợi vào ngày 29 tháng 6 và cuối cùng chúng ta đã bỏ 'hai' trong số ba bản sao không đồng bộ trong trung tâm dữ liệu từ xa vào buổi trưa ngày 1 tháng Bảy. Điều đó đã giảm thời gian chờ đợi đáng kể cùng với nó.
Những gì chúng tôi đã kiểm tra cho đến nay - Nhật ký gửi hàng đợi, Làm lại hàng đợi, thời gian đông cứng cuối cùng và thời gian cam kết cuối cùng trên các bản sao từ xa. Chúng tôi có các đợt giao dịch nhỏ liên tục trong giờ làm việc và do đó, hàng đợi gửi khá nhỏ tại một dấu thời gian nhất định (bất kỳ nơi nào trong khoảng từ 60KB đến 1MB).
Các bản sao từ xa gần như đồng bộ, có rất ít sự khác biệt giữa thời gian cam kết cuối cùng và thời gian đông cứng cuối cùng cho bất kỳ lsn riêng lẻ nào trên bản sao.
Ống mạng là 10G và chúng tôi đã sửa đổi kích thước bộ đệm truyền từ 256 megs thành 2 hợp đồng biểu diễn, điều này được thực hiện theo giả định rằng mạng đã bỏ các gói và truyền lại chúng; một trong những cách đó dường như không giúp được gì nhiều.
Vì vậy, tôi tự hỏi các bản sao ASYNC phải làm gì với sự HADR_SYNC_COMMIT
chờ đợi? Không phải bản sao SYNC chỉ phụ thuộc một mình vào loại chờ này, tôi còn thiếu gì ở đây?