>> Torna all'Homepage <<
Contattaci Entra nei forum Cerca nel sito
News della settimana ASP: esempi di pagine dinamiche Trucchi e suggerimenti per il PC Manuali e guide I dossier e gli approfondimenti di AmicoPc Il sito della settimana I racconti di Armando Staffa Chi siamo
     
 

 

Scarica i file
Scarica i file
citati in questa pagina

 


CONNESSIONE AL DATABASE: QUALE USARE?

Ecco un grafico che riassume i risultati:

Risultati delle prove

Come si può vedere i risultati migliori (ovvero tempi minori di esecuzione) si sono avuti utilizzando una connessione OLE-DB MAPPATH, indipendentemente dal tipo di selezione utilizzata.

La seconda scelta migliore è l'accoppiata DSN - Select (spesso non praticabile in quanto richiede l'intervento del provider per ativare il dsn stesso), seguita da OLEDB PERCORSO - Stored e DSN - Stored

Come si può vedere il metodo che normalmente si utilizza (mappath + select) è uno dei 'peggiori', seguito solo da PERCORSO - Stored

In realtà si tratta di differenze davvero minime (pochi millesimi di secondo...) di cui l'utente nemmeno si accorge e di cui forse non serve nemmeno preoccuparsi.
Comunque rimane il fatto che esistono delle differenze fra i sistemi citati. In particolare il driver OLE-DB risulta effettivamente più veloce rispetto agli altri metodi.

La stessa Microsoft conferma le migliori performance dell'OLE-DB rispetto al normale ODBC.
Per quanto riguarda invece un'introduzione all'OLE-DB consiglio il i seguenti link:

http://www.microsoft.com/Italy/msdn/library/
ado200/mdaprv01_2277.htm

http://www.aspitalia.com/articoli/db/ole-db.asp

Ricordiamo comunque che alla fine ciò che fa la differenza non sono tanto quei centesimi di secondo nell'esecuzione delle pagine asp: certamente anche la velocità in esecuzione influisce, ma è decisamente piu' importante l'affidabilita' del server, la velocita' di risposta, la banda passante garantita, il carico di lavoro cui è sottoposto il server stesso (ovvero il numero di siti che ospita)...

Per quanto riguarda invece la distinzione fra select e stored procedure non si hanno apprezzabili differenze: nel caso di connessioni OLEDB - Mappath è indifferente. Nel caso di OLEDB - Percorso comporta invece un miglioramento delle prestazioni. In tutti gli altri casi invece rallenta l'esecuzione delle pagine.

Personalmente continuo ad utilizzare il consueto metodo di specificare direttamente nel codice l'istruzione SQL da eseguire, sia per una maggior chiarezza nella lettura del codice sia per evitare di dovermi scaricare il database ogni volta che modifico la stringa di selezione.

Note finali
Occorre comunque sottolineare come i risultati potrebbero variare a seconda di numerosi altri fattori: per esempio l'esecuzione quasi contemporanea di due query ha effetti sui tempi di risposta? Al crescere della complessita' delle query quale soluzione e' ottimale? Inoltre conviene avere un unico database con diverse tabelle o avere diversi database con un'unica tabella?
Come si vede i fattori che entrano in gioco sono tanto numerosi
da non poter dare una risposta definitiva sempre valida.

Magari si lavora sul codice per risparmiare qualche decimo di secondo e poi si obbliga l'utente ad aspettare il caricamento di un'immagine da 100 kb!!!


<< indietro

Utenti connessi: 45

Invia questa pagina ad un amico

 

 

 

Chi siamo | Pubblicità | Note sulla privacy | Dicono di noi
Grafica cura di Paolo Omero
- Stefania Migliorucci