2015-03-23 15:18 GMT+00:00 Roberto Polli <robipo...@gmail.com>: > Il 23 marzo 2015 13:38, enrico franchi <enrico.fran...@gmail.com> ha > scritto: > > quindi semplicemente non fa dump non fa nulla e i dati che devono > persistere > > finiscono altrove. > Chiaro. La mia curiosita era di tipo implementativo. > > Se non c'è soluzione se non nell'usare prodotti che non facciano il > dump della ram su disco, possiamo dire che non c'è niente di male nel > farlo con fork()+COW, giusto? > > E' il dump della RAM che è il male, no?
Io non direi che e' "male" o bene. Farlo con fork() e' relativamente semplice perche' deleghi il lavoro sporco all'OS. Se il resto di Redis e' fatto in modo da non avere bisogno di MVCC -- visto che e' tutto monothread --, beh, capisco il dolore di farlo apposta per fare i dump. Se hai un sistema che effettivamente supporta parallelismo nei client (e quindi hai i classici problemi di isolation, blah blah blah) probabilmente vuoi comunque MVCC o qualcosa di analogo. E immagino che puoi usarlo anche per fare il dump. Questo a prescindere che sei in RAM. Se poi sei su disco... in generale copiare i file cosi' come sono da problemi di stato inconsistente. Quindi ancora una volta o blocchi tutte le scritture mentre fai il dump, oppure usi qualche tecnica affine ad MVCC o a quello che usi per gestire i soliti problemi di concorrenza. In generale, dal punto di vista della pianificazione delle risorse mi viene piu' facile lavorare con un affare che non ha un caso super-speciale per quell'operazione. Ovvero se uso postgres, *normalmente* avro' un consumo di memoria/disco legato al fatto che deve gestire l'isolation e il dump (che a quel punto per inciso mi serve per cose specifiche, non per la persistenza o per la sincronizzazione) non cambia troppo (a parte che sara' un'operazione particolarmente lunga). Oh, in realta' se uso Redis lo so e considero suddetto dump come parte di quello che deve reggere la box. Diciamo che non mi piacciono troppo i grafici con picchi (anche regolari), perche' ho paura che se per qualche normalissimo motivo mi cresce il consumo di memoria -- che so... improvviso picco di traffico, vallo a sapere -- *e* mi parte il dump in quel momento sono a piedi, quindi semplicemente i conti mi si complicano un po'. -- . ..: -enrico-
_______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python