
Così spiego un po' meglio perché ho iniziato a rompere sul fatto dei quote inutili, su quando il server è lento, eccetera eccetera. Ma solo dal punto di vista tecnico, non dei contenuti!

Per gli addetti ai lavori che ci capiscono un po' di computer farà ridere, ma l'ho usata con successo una volta quando ho tenuto un piccolo corso per chi voleva iniziare ad usare il computer.

Allora, pensate al server (ma anche il vostro PC è uguale) ad una bibilioteca, un po' particolare.
Questa biblioteca ha un'entrata da cui entrano ed escono i gli utenti (la connessione di rete) e tanti tanti scaffali (il disco rigido) dove sono riposti vari libri, ovviamente composti da vari fogli. Per noi un libro è una discussione e un foglio è un singolo messaggio.
Gli utenti della biblioteca però non vanno direttamente a leggersi i libri ma devono passare per il bibliotecario (CPU). Infatti quando arrivano in biblioteca trovano un enorme bancone (RAM) dietro al quale il bibliotecario riceve le richieste degli utenti.
Esempio: arriva mototata che vuole vedere gli ultimi messaggi di "Buongiorno Forum", allora va dal bibliotecario e glielo chiede.
Il bibliotecario va nello scaffale, si fa una fotocopia dei fogli richiesti, torna e li piazza su un pezzo di bancone libero. A questo punto mototata li può leggere. Ovviamente ci sono tanti utenti che chiedono contemporaneamente altri fogli, ma niente paura! Il nostro bibliotecario è velocissimo: riesce a rispondere a 25 richieste al secondo.

Inoltre è "furbo", perché se subito dopo mototata arrivo io che voglio leggere gli stessi messaggi di "Buongiorno Forum" mi dice "sono già lì" e mi indica il pezzo di bancone con i fogli messi poco prima.
Così facendo si risparmia un sacco di strada e di lavoro (perché ad andare per scaffali è una faticaccia). Io ho la mia risposta in modo immediato e lui ha tempo libero per rispondere ad altre richieste.
Però alla lunga il bancone si riempie di tante cose diverse. Infatti è molto più piccolo degli archivi. Quindi che fa? Individua i fogli che non vengono letti da tanto tempo, li butta via (tanto l'originale sta sugli scaffali) e fa posto per i nuovi fogli.
Fin qui mi pare tutto semplice, gli utenti sono "lenti" e lui è velocissimo.
Ma ogni tanto arrivano degli utenti un po' strani. Sembrano dei robot ed hanno il tesserino di riconoscimento con scritto GoogleBot, YahooBot, etc....
Fanno praticamente la stessa cosa degli utenti ma, essendo robot, leggono moooolto più velocemente. Quindi fanno correre il bibliotecario che deve continuamente andare a fotocopiare fogli dagli scaffali perché leggono di tutto.
Ma non finisce qui! Ci sono vari tipi di robot: ci sono quelli buoni e quelli cattivi. Quelli buoni sono i vari Google, Yahoo, etc.. che non vogliono stressare troppo il bibliotecario e si adeguano alla sua velocita. Quelli cattivi, invece, se ne fregano e fanno un sacco di richieste contemporaneamente. Il bibliotecario corre avanti ed indietro tra gli scaffali ed il bancone ma ogni tanto non ci sta dietro e si crea una piccola coda sul bancone. Ecco perché ogni tanto il forum rallenta. Se la coda supera tot secondi, la richiesta al bibliotecario viene annullata ed invece di darci il foglio che vogliamo ci da un foglio prestampato di colore blu con scritto "errore".
Questa è la storiella quando vogliamo solo leggere, e quando vogliamo scrivere?

E' presto detto. Il processo è inverso: gli utenti (solo quelli che hanno la tessere della biblioteca!!! cioè chi è registrato sul forum) possono aggiungere fogli ai libri. Quindi arrivano dal bibliotecario e gli danno un foglio nuovo da aggiungere su un ben preciso libro. Gli dicono "caro bibliotecario, aggiungi questo foglio a Buongiorno Forum". Il bibliotecario prende il foglio, lo numera e lo piazza sul libro giusto. Da quel momento tutti lo leggeranno. A differenza delle letture, deve fare un po' più fatica.

E le ricerche?
Eh, bella storia... Si, perché gli utenti della biblioteca sono abituati bene, e fanno le ricerche usando le parole. Ad esempio arriva Gaby e chiede "bibliotecario! Tirami fuori tutti i fogli con scritto GELATO!" Ed il bilbiotecario che fa? Va a leggersi tuuuuutti i libri alla ricerca di tale parola? Ma anche no.

Quando ha messo su la biblioteca ha creato anche un indice della parole chiave (la famosa indicizzazione) in cui si è segnato, parola per parola, in che fogli sono presenti.
Quindi, va a prendere un librone che contiene l'indice, va alla lettera G, cerca GELATO e trova scritto in che libri ed in che fogli è presente. A quel punto va tra gli scaffali, fa le copie di tutti i fogli richiesti e li porta sul bancone. Gaby è contento.


Però a sto punto Gaby vuole scrivere "Preferiso il gelato del Miro". Prende un foglio lo scrive e lo passa al bibliotecario. Questo che fa? Stessa cosa di prima, va a metterlo nel libro giusto.
Però ora servirebbe l'indice aggiornato, se uno cerca di nuovo GELATO. Ed infatti prima di mettere il foglio nel libro, individua tutte le parole con più di 3 lettere, che non siano troppo comuni (in questo caso "Preferisco" "gelato" "Miro") e va ad aggiornare il librone con l'indice. Un lavoraccio.


Infatti con un indice snello, senza ripetizioni, farebbe prima a trovare quel che cerca, gli scaffali sarebbero meno pieni e, soprattutto, il bancone basterebbe per più utenti contemporaneamente. Risparmierebbe un sacco di lavoro.

Ultimo: il bibliotecario fa anche le tessere delle biblioteche ai nuovi utenti, così possono scrivere. Gli utenti normali compilano il modulo e glielo passano, con calma. I robot cattivi invece, che vogliono inserire fogli zeppi di pubblicità indesiderata, continuano a portare a raffica i moduli compilati, sbagliati, ed il bibliotecario li rifiuta. Però anche qui gli tocca lavorare un sacco e nel mentre si forma la coda di utenti sul bancone...
Piaciuta la storiella?

L'ho fatta un po' lunga ma in una sola botta vi ho spiegato server, lettura, scrittura, ricerche, indicizzazione e cosa fanno i (ro)bot cattivi.
