Tôi đã triển khai một bộ bản sao mà tôi đang sử dụng trên toàn cầu. Tôi có chủ của tôi ở Oregon, Hoa Kỳ và 4 người thứ hai. California và Virginia, Frankfurt và Sydney. Tôi cũng có các máy chủ web trong cùng một khu vực. Các máy chủ web đó kết nối với mongo bằng cách sử dụng mongoose:Mongoose không đọc từ cơ sở dữ liệu thứ cấp Mongo
var mongoose = require("mongoose");
var dbUrl = "mongodb://***.***.***.***:27017,***.***.***.***:27017,***.***.***.***:27017,***.***.***.***:27017,***.***.***.***:27017/exampleDb";
var dbOptions : {
"replSet": {
"rs_name": "exampleRepSet",
"readPreference": "ReadPreference.SECONDARY_PREFERRED",
"read_preference": "ReadPreference.SECONDARY_PREFERRED",
"w":0,
"slaveOk": true
}
}
mongoose.connect(dbUrl, dbOptions);
Vấn đề của tôi là khách hàng của tôi có độ trễ cao hơn tùy thuộc vào độ chính xác của máy chủ. California nhận 40ms trong khi Sydney đạt 400 mili giây. Tôi không hiểu tại sao điều này xảy ra vì họ nên đọc ra khỏi cơ sở dữ liệu thứ cấp trong khu vực của họ.
Tôi hiểu rằng việc viết phải được thực hiện cho chính nhưng ngay cả khi tôi thực hiện tìm thì không nên thực hiện trên khu vực phụ và trả lại khá nhanh?
Tôi nhận thấy có một số tùy chọn dự phòng trong cấu hình đó nhưng tôi đang tuyệt vọng. Tôi cũng đã thử tùy chọn "ReadPreference.NEAREST"
không có kết quả.
Phiên bản nào của cầy mangut bạn có đang chạy? – ThrowsException