MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Kết nối lại với MongoDB một cách đáng tin cậy

Có 2 tùy chọn kết nối kiểm soát cách trình điều khiển mongo nodejs kết nối lại sau khi kết nối không thành công

  • renectTries:cố gắng kết nối lại # lần (mặc định là 30 lần)
  • renectInterval:Máy chủ sẽ đợi # mili giây giữa các lần thử lại (1000 mili giây mặc định)

tham khảo tài liệu trình điều khiển mongo

Có nghĩa là mongo sẽ tiếp tục cố gắng kết nối 30 lần theo mặc định và đợi 1 giây trước mỗi lần thử lại. Đó là lý do tại sao bạn bắt đầu thấy lỗi sau 30 giây.

Bạn nên tinh chỉnh 2 thông số này dựa trên nhu cầu của bạn như mẫu này.

var MongoClient = require('mongodb').MongoClient,
    f = require('util').format;

MongoClient.connect('mongodb://localhost:27017/test', 
    {
        // retry to connect for 60 times
        reconnectTries: 60,
        // wait 1 second before retrying
        reconnectInterval: 1000
    },

    function(err, db) {
        var col = db.collection('t');

        setInterval(function() {
            col.insert({
                a: 1
            }, function(err, r) {
                console.log("insert")
                console.log(err)

                col.findOne({}, function(err, doc) {
                    console.log("findOne")
                    console.log(err)
                });
            })
        }, 1000)
    });

Điều này sẽ thử 60 lần thay vì 30 lần mặc định, có nghĩa là bạn sẽ bắt đầu thấy lỗi sau 60 giây khi nó ngừng cố gắng kết nối lại.

Ghi chú bên lề:nếu bạn muốn ngăn ứng dụng / yêu cầu đợi cho đến khi hết thời gian kết nối lại, bạn phải vượt qua tùy chọn bufferMaxEntries: 0 . Cái giá phải trả cho việc này là các yêu cầu cũng bị hủy bỏ trong thời gian mạng bị gián đoạn ngắn.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB Aggregation:Làm thế nào để có được tổng số bản ghi?

  2. Làm cách nào để thực hiện nhiều hơn / nhỏ hơn so với sử dụng MongoDB?

  3. Chọn độ dài chuỗi trong mongodb

  4. Cách tổ chức mối quan hệ nhiều đến nhiều trong MongoDB

  5. Chọn bản ghi phù hợp với giá trị concat của hai trường trong mongodb