WCF Load Test

Windows Communication Foundation è sicuramente uno tra i migliori Framework sviluppati da Microsoft negli ultimi anni: offre un’ottima estendibilità e, allo stesso tempo, risulta facile da utilizzare per chi da subito vuole realizzare servizi senza particolari esigenze.

Una cosa su cui si discute spessissimo sono le performances ottenibili con questo Framework, e, proprio come detto dalla stessa Microsoft(su questo argomento suggerisco questa sessione di Nicholas Allen della PDC 2008..), raggiungere ottime performances non è cosa facile ed immediata.
Per avere dei buoni risultati è necessario effettuare un tuning del nostro servizio, andando a modificare i numerosi parametri presenti nel file di configurazione.
Purtroppo questi parametri non sono uguali per tutti i servizi: variano infatti in base all’endpoint utilizzato, al tipo di messaggio che si restituisce, al size del messaggio, ecc, e quindi va effettuata un’analisi di questi fattori per ogni servizio.
Proprio per realizzare questo tipo di tuning, su Codeplex è presente un add-on per Visual Studio 2005-2008 (su Visual Studio 2010 sarà già incluso) che permette di effettuare un test di carico sul servizio, in modo da trovare i valori giusti per la configurazione.
Questa libreria offre le caratteristiche molto interessanti che elenco di seguito:

  • Replay of captured scenario in a unit test that can be included in a load test.
  • Support for the DataContractSerializer.
  • Support for message contracts.
  • ASMX support (beta)
  • Support for proxies generated using svcutil.
  • Support for clients that create proxies at run time from contract interfaces.
  • Supports calls to multiple services in a single scenario.
  • Supports multiple calls to the same service operation.
  • Filtering by SOAP action of which messages in the trace to replay.
  • Readable and modifiable code is generated.
  • Automatic association of trace message with proxy method (requires all operations to have a unique SOAP action).
  • Support for client and server side traces.
  • A command line tool for processing traces and generating code.
  • Visual Studio 2005/2008 integration (Team Developer, Team Test, Team Suite and for 2008 also Professional)) that can be used instead of the command line tool.

Per chi fosse interessato il download lo si trova qui.


Comments