Domanda

Io uso Web Forms e Asp.Net con MS SQL.

Per il mio sito web ho bisogno di memorizzare questi codici belove, forse altri in futuro:

  • Google Code Analytic
  • Alcuni codici JavaScript
  • HTML piè di pagina e intestazione per il mio modello.

Ho bisogno di una soluzione che potrebbe essere centralizzata, l'uso CACHE, facile da aggiornare:

Ecco le mie idee, vorrei il vostro parere:

  • 01 utilizza un database con una tabella (tabella di configurazione), che per ogni record (VARCHAR) consentirebbe la conservazione di questi spinette di codice come stringa.
  • File 02 Utilizzo semplice testo in una cartella specifica, in modo che possa includere questi file nel mio codice. Ho potuto aggiornare i codici tramite FTP e Notepad (Eccomi preoccupazione per la cache).
  • 03 Usa web.conf file.
  • 04 Uso File di testo e una classe wich sarebbe riuscito memorizzare nella cache il contenuto di questi file.

Tutte le idee? Grazie per il vostro tempo.

Qui vorrei evidenziare e articolo utile per questo tema:

http://nathanaeljones.com/153/performance-killer-disk-io /

È stato utile?

Soluzione

Prima di tutto, per quanto riguarda il collegamento fa riferimento a Natanaele Jones blog, anche se IO disco è molto più lento rispetto a operazioni di memoria maggior parte dei siti web non sono IO disco legato, e la maggior parte delle sue soluzioni sono francamente schifo ignoranti.

In generale ci sono solo pochissime situazioni in cui si diventa IO disco legato. Il primo è il server di database stesso. Se non ha abbastanza RAM per mantenere le parti rilevanti della base dati in memoria, allora la velocità del disco di quel server è di fondamentale importanza; soprattutto in una situazione di alta transazione.

In secondo luogo, si può essere IO disco legato se l'applicazione legge e scrive un sacco di file direttamente. Molto poche applicazioni lo fanno. Non sto contando i file aspx or.html della vostra applicazione perché questi possono essere memorizzati nella cache dal quadro esistente e IIS.

In sostanza, basta ignorarlo.

L'intera filesystem all'idea database di sincronizzazione come un metodo per migliorare le prestazioni non ha alcun valore a circa il 99,999% dei siti. Se non altro il database dovrebbe spingere i file nel file system del server web, non il contrario. Ho visto esattamente 1 sito in 20 anni di sviluppo che ha richiesto questo. Servono diversi milioni di pagine viste al giorno. Inoltre, si sbaglia piatta di fare una chiamata al database attraverso una rete di essere più veloce di caricamento di una quantità equivalente di dati da un file locale.

In seguito, l'area effettiva che siamo davvero legati a è l'invio di dati attraverso la rete al browser del client. Questo è sempre più lento di lettura di un file da un disco; anche senza traffico sulla linea. I dischi rigidi spostare i dati molto più veloce rispetto la scheda di rete può. Facendo un ulteriore passo avanti; moderni dischi rigidi sono ordini di grandezza più veloce la connessione a Internet. La cosa migliore che puoi fare per migliorare le prestazioni è solo quello di limitare il numero di richieste di connessione un singolo caricamento della pagina richiede. Ottimizzazione qui significa avere file di 1 css, non 20; avere solo riferimenti ai file un paio di .js, non al 100; e combinare grafica in sprite ove possibile. E 'più veloce per trasferire file di grandi dimensioni 1 di 100 file di piccole dimensioni a causa di come funziona il protocollo TCP.

Forse su un server condiviso sovraccarico si potrebbero avere un problema. Tuttavia, la realtà è che un server condiviso sovraccarico sarà congestionato rete molto prima che la sua lunghezza della coda del disco cresce fuori controllo.


Con quella di mezzo, diamo un'occhiata al tuo rilascio effettivo.

Gli elementi javascript sono due luoghi preferiti: 1. Come .js file sul server web o 2. incorporato nella tua pagina master. Basta fare l'opzione 1, saranno memorizzate nella cache dal server web. Inoltre, essi saranno memorizzate nella cache dal browser client che significa che non dovrete

Per la vostra intestazione e piè di pagina, il codice per questo dovrebbe essere nella tua pagina master. Non fare lato server comprende, che appena complica le cose. Costruire un normale sito web .net che sfrutta le pagine master per il contenuto "chrome". È possibile abilitare la cache pagina parziale a livello di applicazione, che consente di gestire tutti caching per voi.

Quando si aggiorna il contenuto di intestazione o piè di pagina, solo ridistribuire il sito.

Altri suggerimenti

Conservare le intestazioni e piè di pagina in file e l'uso Server Side Includes . Alcuni server Web (IIS 6.0) può consentire di aggiungere piè di pagina del documento per tutte le pagine.

Store è la tua JavaScript nei file e utilizzare la nelle vostre pagine. Questo permetterà la memorizzazione nella cache e migliorare le prestazioni pagina.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top