Categorie
Informatica

cache

inteso sia nel senso francese che in quello triestino. =)
scena ufficio: c’è F., collega con vent’anni di esperienza su pl/sql, alle prese con una procedura oracle che va e non va.
cioè sembra andare ma su internet exploder la pagina con i dati non è aggiornata.
allora F. chiama il capufficio C. dicendo “guarda ci deve essere qualche problema, la procedura blabla, il commit funziona blabla… e i dati sono errati”. il capufficio C. guarda la procedura, ok, guarda il codice java, ok, guarda il browers, no ok!
Strumenti -> opzioni internet -> file temporanei -> elimina. reload. dati corretti!
C.: È un problema della cache. hai capito perchè non uscivano i dati giusti?
F.: no, cioè…
C.: ho cancellato la cache di internet exploder e quindi…
F.: quindi la procedura…
C.: no, che procedura! internet exploder!
F.: sì, perchè tiene in memoria…
C.: cosa tiene in memoria secondo te?
F.: eh… i parametri del calcolo… (e sempre più fantozzianamente)… i risultati della procedura…
C.: sicuro? tiene in memoria i parametri?
io, da dietro le spalle di C., come se fossimo a scuola durante l’interrogazione, faccio sventolare un foglio di carta suggerendo “pagine, pagine”.
C. mi vede riflesso nel vetro dell’anta dell’armadio e io smetto…
F.: beh, così se devi riaggiornare… forse tiene la SGA! ecco, c’è la SGA nella cache e allora (sta per affondare nella sedia)…
C.: ah, secondo te exploder ha la SGA di Oracle nella cache…
F.: forse…
C.: exploder tiene memoria delle pagine html! le pagine generate dal server! se ce le ha già in memoria non le richiede di nuovo al server, quindi tu vedi i dati vecchi. cancellata la cache il browser va a richiedere la pagina al server che gliela dà con i dati aggiornati. chiaro?
F.: beh, sì, non avevo capito.
C.: bene.
C. esce. dieci secondi e torna.
C.: potresti telefonare a Larry Ellison e Bill Gates e suggerirgli di fare in modo che tutti i client scambino col server la SGA di Oracle, sarebbe leggero e veloce e tutti potrebbero accedere ai dati senza problemi… (riesce sghignazzando…)
umorismo informatico. io ho riso. poi mi sono scusato con F., ma proprio non ce la facevo a resistere… fantastico =)
per la cronaca e per chi non lavora con oracle, la SGA, System Global Area, è una porzione di memoria _grande_ che il server Oracle usa condividendola sulle varie istanze di database. _grande_ nel senso che nel nostro caso sarà qualcosa tipo dai 2 ai 4 GigaByte. condividerla con il mondo è un’idea alquanto balzana

2 risposte su “cache”

beh, per dire la verità penso che sia meglio dare al controller il compito di gestire la cache. usando springframework, per esempio, basta derivare i controller da un generico astratto
<bean id= "controllerNoCache " abstract= "true">
<property name= "cacheSeconds" value= "0" />
</bean>

I commenti sono chiusi