2016-10-21 5 views
0

Ich habe eine Webanwendung. Die Authentifizierungstoken werden im speicherinternen Cache gespeichert und nicht in der Datenbank gespeichert. Ich verwende Couchbase zum Caching. Während der Bereitstellung der Anwendung wird der Cache gelöscht und alle Benutzer werden anschließend ausgeloggt, da die Token im Cache gespeichert werden. Was kann ich tun, um zu verhindern, dass mein Cache verloren geht? Ich möchte immer noch keine Datenbank zum Speichern von Token verwenden.Cache und Couchbase

Antwort

0

Ich lag falsch. Der Cache bleibt bestehen. Auch nach dem Neustart des Servers. Seltsam, aber ja, tut es. Möglicherweise fließt couchbase beim Neustart auf den Datenträger. Außerdem beinhaltete mein Anwendungsfall Spring, wodurch die Verwendung von Buckets vom Typ "memcached" ausgeschlossen wird.

0

Spülen Sie Ihre Eimer absichtlich? Oder Sie meinen, Sie verwenden "Memcached" -Typen von Buckets, die den Neustart nicht überleben?

Ich würde Ihnen empfehlen, "Couchbase" Typ des Eimers einzurichten, und Ablaufzeit verwenden, wenn Sie Sitzung speichern. In diesem Fall verfügen Sie über eine persistente Sitzung, haben aber immer noch nicht genug Speicherplatz, da alte inaktive Sitzungen automatisch entfernt werden.

+0

Ich benutzte Couchbase Art von Eimern. Der Spring-Cache unterstützt keine Memcache-Buckets. Aber die Ablaufzeit in TTL funktioniert nicht gut für mich. Ich mam Einstellung der Ablaufzeit mit der Java-sdk für Spring-Cache. – rohanagarwal