Ho bisogno di qualcosa come un archivio di valori-chiave temporaneo in-memory. So che ci sono soluzioni come Redis. Ma mi chiedo se l'utilizzo di un dizionario Python potrebbe funzionare? E potenzialmente essere ancora più veloce? Quindi pensa a un server Tornado (o simile) in esecuzione e in possesso di un dizionario python in memoria e basta restituire il valore appropriato in base alla richiesta HTTP.Utilizzo del dizionario Python come database temporaneo in memoria con valori-chiave?
Perché ho bisogno di questo? Come parte di un servizio ci sono valori chiave in fase di memorizzazione, ma hanno questa proprietà: più recenti sono, più è probabile che si acceda. Quindi voglio continuare a dire gli ultimi 100 valori chiave in memoria (così come scrivere su disco) per un recupero più veloce.
Se il server muore, è possibile ripristinare nuovamente il dizionario dal disco.
Qualcuno ha fatto qualcosa del genere? Mi manca qualcosa qui?
PS: Penso che non sia possibile con un server WSGI, giusto? Perché per quanto ne so non puoi tenere qualcosa in memoria tra le singole richieste.
Dato che l'OP si riferisce a un server Tornado che interroga le richieste al dict ... ci sarà ancora latenza di rete. – Amber
@amber ma non per memcache/redis. –
Ciò che l'OP sembra suggerire è * reimplementare * memcache/redis tramite tornado. – Amber