Redis
 sql >> Baza danych >  >> NoSQL >> Redis

Czas wygaśnięcia sesji ekspresowej i redis

To jest moja konfiguracja dla sesji i działa.
Ustawiłem czas wygaśnięcia na 5 sekund do celów testowych.

app.use(session({
        store: new redisStore({
        host: 'localhost',
        port: 6379,
        client: redisClient,
        ttl: 5 // in seconds
    }),
    secret: 'this is secret',
    resave: false,
    saveUninitialized: true,
    // cookie: {maxAge: 5000}
}));

Ustawiam maxAge i to nie zadziałało i kiedy ustawiłem ttl zadziałało.

Uwaga: Przetestowałem i dowiedziałem się, że ttl jest na drugim miejscu, ale maxAge jest w milisekundach! (trochę dziwne)

możesz rejestrować dane sesji za pomocą oprogramowania pośredniczącego, takiego jak poniżej, aby sprawdzić, czy obiekt paszportu istnieje, czy nie, jeśli w danych sesji nie ma obiektu paszportu, użytkownik jest wylogowany.

app.use((req, res, next) => {
    console.log('session:\n', req.session);
    next();
});


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Konwencja nazewnictwa i prawidłowe znaki dla klucza Redis

  2. Jak mogę znaleźć identyfikator sesji podczas korzystania z ekspresu/połączenia i magazynu sesji?

  3. przekaż wyniki do innego polecenia w redis

  4. Filtrowanie elementów w Redis

  5. Czy istnieje coś takiego jak Redis DB, ale nie ograniczone rozmiarem pamięci RAM?