MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

MongoDB:Błąd podczas ustawiania indeksu TTL dla kolekcji:sesje

Jak powiedziałem w twoim komentarzu, zasadniczo Express odbiera połączenia, zanim magazyn sesji zostanie w pełni połączony. Rozwiązaniem jest zaczekanie na nawiązanie połączenia przed zezwoleniem aplikacji na rozpoczęcie nasłuchiwania.

Możesz uniknąć tego problemu, używając wywołania zwrotnego podczas tworzenia MongoStore lub przekazując już aktywne połączenie.

Przykład użycia connect-mongo Oddzwanianie

var sessionStore = new MongoStore({ url: 'someConnectionUrl', db: 'audio-drop' }, function(e) {

  var cookieParser = express.cookieParser('waytoblue');
  app.use(cookieParser);

  app.use(express.session({
    store: sessionStore
  }));

  app.listen();
});

Prosty przykład mangusty

var mongoose = require('mongoose');

mongoose.connect('localhost', function(e) {
  // If error connecting
  if(e) throw e;

  var sessionStore = new MongoStore({ mongoose_connection: mongoose.connection }),
      cookieParser = express.cookieParser('waytoblue');

  app.use(cookieParser);

  app.use(express.session({
    store: sessionStore
  }));

  app.listen();
});


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Sterownik PHP mongodb sprawdza połączenie

  2. Zduplikuj kolekcję mongodb

  3. Sortuj podpola z nieznanym rodzicem

  4. Zaktualizuj zagnieżdżoną tablicę w Meteor

  5. Zaktualizuj tablicę w mongo i upsert