2009-03-19 14 views
17

Ho un problema ricorrente in cui un cliente chiama e si lamenta che il sito Web è troppo lento. In particolare, se sono inattivi per un breve periodo di tempo, quindi tornare al sito, ci sarà un minuto - due minuti prima che l'utente veda una risposta. (il browser standard è Firefox in questo caso)Come tenere traccia delle prestazioni del server IIS

Ho Perfmon installato e funzionante, l'utilizzo della CPU è solitamente inferiore al 20% (processo singolo ... non chiedere). Il database sta canticchiando. E mi sto tirando i capelli.

Quindi, quali metriche/strumenti trovate utili per valutare le prestazioni di IIS?

+0

Questo potrebbe essere un adattamento migliore su Server Fault. –

+1

Potrebbe essere, ma Server Fault non esisteva quando ho posto questa domanda. –

risposta

21

Spero che questo aiuti:
Best Practices for Speeding Up Your Web Site
Scaling Strategies for ASP.NET Applications
IIS Tuning
14 Rules for Faster-Loading Web Sites
Best practices for creating websites in IIS 6.0
Stanford Computer Cience - High Performance Web Sites
10 Tips for Writing High-Performance Web Applications
Writing High-Performance Managed Applications : A Primer
Nine tips for a healthy "in production" ASP.NET application
Speedy C#, Part 2: Optimizing Memory Allocations - Pooling and Reusing Objects
Memory Usage Auditing For .NET Applications
Troubleshooting HTTP Compression in IIS 6.0
Maximizing IIS Performance - 25 tips
Optimizing IIS 6.0 Performance
Page Speed - an open-source Firefox/Firebug Add-on
Performance Testing Guidance for Web Applications
Top 10 Performance Improvements in IIS 7.0
CHAPTER 6 Optimizing IIS 6.0 Performance
Performance Tuning Guidelines for Windows Server 2003 - Performance Tuning for IIS 6.0
ASP.NET Performance Tips
IIS 6.0 Tuning for Performance - by Peter A. Bromberg, Ph.D.
Improving .NET Application Performance and Scalability - by MS
Optimizing and Performance Tuning IIS 6.0
12 Steps To Faster Web Pages With Visual Round Trip Analyzer
Thread: IIS 6 performance tweak guide (draft)
CPU Settings for an Application Pool IIS6 e IIS7

grandi miglioramenti consigli:
Running ASMX Web Services on STA Threads
Scale Net

Misura, mea sicuro, misura:
carico di prova il tuo sito
Show Slow
Performance Monitor Wizard
Two Minute Drill: Introduction to XPerf
Suggested Performance Counters to Watch (IIS 6.0)

Vedere ciò che i migliori siti hanno fatto:
Benchmarks
TOP 100

Più risorse: 012.380.073.162. Learn papers

La mia esperienza dice:
- Abilita la compressione (GZIP/Deflate) in IIS, per i dati statici. Semplice da implementare e con risultati eccellenti.
- se cpu non è un problema prova a abilitare la compressione anche per i dati dinamici.

+3

ok molti collegamenti sono buoni, ma che dire di alcuni consigli basati sulla * tua * esperienza, anche tu? –

+1

La mia esperienza dice: Valuta ogni caso e applicalo per ottenere risultati. Sto dando le opzioni. – lsalamon

12

Per il caso specifico, è necessario aumentare l'opzione di timeout in IIS perché il ritardo è dovuto a ASP.NET che carica i file binari e avvia l'applicazione. Il valore predefinito è 20 minuti, quindi se nessuno accede al sito per 20 minuti, IIS interromperà il processo e la richiesta successiva impiegherà molto tempo per l'avvio.

+0

Hai un consiglio su cosa impostare il valore? Ho cambiato il mio a 60 minuti come antipasto. –

+0

Dipende da quanto traffico riceve il tuo sito. Direi impostare se ricevi <100 visitatori al giorno, dovrebbe essere circa 24 ore. In questo modo se non ricevi traffico nel periodo di bassa stagione il tuo sito sarà ancora reattivo il giorno successivo. – Alex

+2

@Chris di solito non si desidera che scada del tutto se si sta eseguendo il proprio server e non c'è molto altro sulla scatola. Vuoi sempre che il tuo sito sia scattante giusto? –

4

Forse il pool di applicazioni si sta arrestando quando c'è un periodo di inattività? Il pool di applicazioni impiegherebbe del tempo per iniziare il backup.

Problemi correlati