Le query di Memcache sono eseguite su un cron job?

1

Ho diverse query che sfruttano la memorizzazione dei dati in memcached. Rende ed è contro le migliori pratiche eseguire un cron job per eseguire queste query ogni 15 minuti per mantenere aggiornata la cache? Attualmente la nostra cache scade ogni 30 minuti e si aggiorna se qualcuno viene a visitare una pagina che esegue la query e la memorizza nella cache. Mi chiedevo cosa ne pensavano gli altri di questo approccio.

    
posta KingKongFrog 18.05.2015 - 21:05
fonte

1 risposta

1

Bene, l'uso di un servizio a tempo per riscaldare una cache è tipicamente quello che le applicazioni fanno quando hanno bisogno di non essere raffermo oltre le N unità di tempo. Quindi questo è buono.

Tuttavia vorrei avvisarti contro una rigida routine di N minuti, specialmente se ci sono alcune query che sono destinate a richiedere più tempo di N minuti in qualsiasi scenario. Quello che succederebbe qui è che dovresti sopraffare il sistema (processi di cron) e il DB con richieste quando i precedenti non sono stati restituiti. Suggerirei di considerare qualcosa come N unità di tempo dall'ultimo tentativo. Ovviamente dovrai vedere se questo si adatta alle tue esigenze ma in questo modo non avrai mai un caso in cui 2 processi cron o 2 thread provano a eseguire la stessa query per riscaldare la stessa cache. E con il rallentamento del sistema, ci sono molte probabilità che ci siano più processi che tentano di fare la stessa cosa nello stesso punto in termini di sprechi di CPU e di memoria.

Su una nota meno importante ti suggerirei anche di provare e integrare i lavori nella tua applicazione invece del lavoro cron - ma questa è una questione di gusto personale e se sei sicuro che la distribuzione del lavoro cron in ogni nuovo ambiente abbia vinto " t me perso o incasinato.

    
risposta data 18.05.2015 - 22:05
fonte

Leggi altre domande sui tag