Trong 3 tháng qua, máy chủ MongoDB của tôi nhận được rất chậm mỗi 2 giờ và 10 phút, rất chính xác.MongoDB chậm lại sau mỗi 2 giờ và 10 phút chính xác
cấu hình My Server:
- 3 bản sao bộ, và với mục đích sao lưu dữ liệu, 1 trong số đó có 3600 giây chậm trễ.
- Không có máy chủ nô lệ nào cho 3 chủ nhân trong bộ bản sao.
- Sử dụng mongoose + node.js để cung cấp api còn lại.
- Khoảng 9 lần đọc và 1,5 ghi mỗi giây trung bình trong dữ liệu thống kê 24 giờ.
Những gì tôi đã làm sau khi tìm kiếm stackoverflow và google:
- Khởi động lại máy chủ không thể thay đổi khoảng thời gian chậm 2 giờ và 10 phút
- Tạo chỉ số cho tất cả các lĩnh vực tôi truy vấn, không có tác động
- Xóa tệp dữ liệu trong một máy chủ và sử dụng một tệp khác để khôi phục, sau đó xóa anohter và khôi phục lại, không ảnh hưởng
- Thay đổi máy chủ chính, không tác động
- Chạy 'currentOps' khi cơ sở dữ liệu bị chậm, tôi có thể thấy nhiều truy vấn treo ở đó, quá nhiều nhật ký để dán ở đây, nhưng không thấy một số truy vấn bất thường.
- Trong giao diện điều khiển mongo, hãy kiểm tra "serverStatus" khi cơ sở dữ liệu bị chậm, lệnh chờ cho đến khi cơ sở dữ liệu được khôi phục.
- Không tăng mức sử dụng bộ nhớ từ lệnh "trên cùng" khi cơ sở dữ liệu chậm.
- phần còn lại mà không truy cập cơ sở dữ liệu hoạt động tốt.
Tôi đoán có thể có khóa nào đó, nguyên nhân tiềm năng nhất là nó có thể là chỉ mục xây dựng. Có điều gì đó đặc biệt trong cơ sở dữ liệu của tôi:
- Tôi có khoảng 14000 bộ sưu tập trong một cơ sở dữ liệu và đang tăng lên. Có thể có từ 1 đến 3000 hồ sơ trong một bộ sưu tập.
- Cả số bộ sưu tập và bản ghi số đang tăng tự động.
- Các trường chỉ mục sẽ được chỉ định khi tạo bộ sưu tập mới.
Tôi đã bị ám ảnh bởi vấn đề này trong 3 tháng. Bất kỳ ý kiến / đề xuất sẽ được đánh giá cao!
Dưới đây là một số bản ghi từ tập tin đăng nhập của tôi:
Fri 05 Tháng Bảy 15:20:11.040 [conn2765] serverStatus rất chậm: {sau basic: 0, sau khi xác nhận: 0, sau khi backgroundFlushing: 0, sau khi kết nối: 0, sau con trỏ: 0, sau dur: 0, sau extra_info: 0, sau globalLock: 0, sau indexCounters: 0, sau khi khóa: 0, sau mạng: 0, sau opcounters: 0, sau opcountersRepl: 0, sau recordStats: 222694, sau repl: 222694, ở cuối: 222694}
Fri Jul 5 17: 30:09 .367 [conn4711] serverStatus rất chậm: {sau cơ bản: 0, sau khi xác nhận: 0, sau khi backgroundFlushing: 0, sau khi kết nối: 0, sau con trỏ: 0, sau dur: 0, sau extra_info: 0, sau globalLock: 0, sau indexCounters: 0, sau khóa: 0, sau mạng: 0, sau khi opcounters: 0, sau opcountersRepl: 0, sau recordStats: 199498, sau repl: 199498, ở cuối: 199528}
Fri Jul 5 19:40:12 .697 [conn6488] serverStatus rất chậm: {sau cơ bản: 0, sau khi xác nhận: 0, sau khi backgroundFlushing: 0, sau khi kết nối: 0, sau con trỏ: 0, sau dur: 0, sau khi extra_info: 0, sau globalLock: 0, sau indexCounters: 0, sau khóa: 0, sau mạng: 0, sau khi opcounters: 0, sau opcountersRepl: 0, sau recordStats: 204061, sau repl: 204061, tại kết thúc: 204081}
Đây là ảnh chụp màn hình báo cáo pingdom của tôi, máy chủ giảm 4 phút sau 2 giờ và 7 phút. Ban đầu, máy chủ giảm 2 phút sau mỗi 2 giờ và 6 phút.
[EDIT 1] Xem thêm màn hình kết quả từ nhà cung cấp máy chủ: CPU http://i.minus.com/iZBNyMPzLSLRr.png DiskIO http://i.minus.com/ivgrHr0Ghoz92.png Connections http://i.minus.com/itbfYq0SSMlNs.png Các kết nối tăng kỳ là bởi vì các kết nối đang chờ đợi, và đếm cho kết nối hiện tại sẽ tích lũy cho đến khi cơ sở dữ liệu được bỏ chặn. Điều này không phải vì lưu lượng truy cập lớn.
Bạn đang sử dụng dịch vụ lưu trữ nào để lưu trữ ứng dụng và bản sao cơ sở dữ liệu của mình? – moka
linode.com, RAM 1G/8 lõi/24GB Đĩa kế hoạch –
"Không có máy chủ nô lệ cho 3 chủ nhân trong bộ bản sao." Không có ý nghĩa, vì không có điều như đa chủ trong MongoDB – Derick