Domanda

Ho notato un paio di messaggi per quanto riguarda lo stress testing di IIS, ma io sono più interessato a conoscere un buon modo per stabilire un punto di riferimento di ciò che il mio web server fisico in grado di gestire.

Sto lavorando su un sistema di produzione in questo momento che sembra rallentare a una battuta d'arresto nei pressi di ogni giorno, e nessuno può sembrare di capire che cosa sta causando il problema. Questo è il tuo N-tier standard di configurare (client, server web, server db). Ho creato alcune pagine ASP.NET semplici che possono fare alcune semplici cose che sto usando per stabilire un punto di riferimento per le prove di stress che posso poi all'utente quando si confrontano con il sistema produttivo che è già in atto.

Ho già costruito una pagina di esempio aspx che restituisce semplicemente indietro alcune statistiche del server web circa gli utilizzi scatola, niente pesante, forse un paio di righe di codice. Ho anche creato un semplice servizio web (ASMX) che metterà alla prova una connessione DB dato l'id corretto, ancora niente di pesante solo l'apertura di una connessione db e una query di esempio che in realtà non fa nulla.

Quello che vorrei sapere è, che cosa è un buon livello di stress che i seguenti test dovrebbero operare sotto ? In particolare, sto usando di Microsoft Web Application Stress Strumento , e sono curioso di ciò che la maggior parte delle persone si aspettano il livello di stress e Stress Moltiplicatore accettabili intervalli dovrebbero essere. So già a che punto il web server inizia carico di punta, il suo livello di circa il 20 Stress e 10 Lo stress moltiplicatore prendere o lasciare, che si traduce in circa ~ 275 richieste di pagine / sec. Sto cercando di scoprire se quel numero è troppo basso, e se questo è una sorta di indicazione che c'è un problema tra il client e il server web o di un problema hardware di qualche tipo, o se è più di un'indicazione che non c'è nulla di male e che il sistema è troppo pesante.

UPDATE:. Da quando ho originariamente scritto questo post il codice è stato spostato in un server che esegue Windows 2003 utilizzando IIS 7

Quello che mi piacerebbe sapere ora è che se ho creato un test relativamente semplice, ad esempio un file index.html di base che serve solo una piccola pagina, quello che ci si può aspettare il "migliore" di pagina richieste / sec I potrebbe raggiungere da un test di stress?

È stato utile?

Soluzione

  

Quello che mi piacerebbe sapere ora è che se ho impostato   una relativamente semplice test, quale un   file index.html di base che serve solo   una piccola pagina, quello che ci si può aspettare   il "migliore" richieste di pagine / sec ho potuto   ottenere da un test di stress?

Non riesco a parlare di Web Application Stress Tool di Microsoft, ma dovrebbe essere possibile thrash una pagina HTML statica ospitata su IIS fino a quando la rete tra la macchina di prova e le inondazioni server o server di prova si esaurisce di CPU per creare e compilare i test. Tutti ISS vorrei fare è inviare la stessa risposta in cache ogni volta.

Per ottenere un buon profilo di come il vostro sito sta lavorando, si ha bisogno di costruire una buona rappresentazione del traffico effettivo che colpisce il sito. Una volta che avete il modellato, è possibile beging scaling up il numero di persone che lo utilizzano per esplorare ciò che le pagine sono più lenti e quali risorse del server sono di prima contro il muro.

In entrambi si avrà una o più pagine il cui rendimento è inaccettabile per un dato carico o qualche statistica server, come l'uso del disco o le prestazioni dei database è guardando oltre utilizzato.

A meno che non si sta testando su un sito che è ospitato sulla stessa architettura come il vostro sito di produzione, è difficile fare architettura raccomandazioni.

Con le pagine underperforming è più facile apportare miglioramenti come il codice è disponibile per l'analisi.

mi raccomando utilizzando Visual Studio Ultimate edition a carico di prova, se si può ottenere. Si dà anche alcuni strumenti ASP.NET profiling di fare i conti con le sezioni di chiamate di codice e di database.

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