We can model work loads for web services in different ways than from traditional RPC(CORBA etc) methods. This is because we can have different transport bindings for web services, of which HTTP transport is the most common one. If you are trying to estimate what is the maximum capacity on a particular web service deployed on a particular hardware, then depending on your end users you can go either for thin client driver or thick client driver. It is important to understand the difference between these two terms since this can effect your performance ( business jobs per unit time ) depending on how you drive the load. So lets see what these terms mean and how they can affect performance.

Thin client:
As the name suggests, The client driver is thin meaning each job it sends to the web service is a plain HTTP request. The request won't travel on the expensive stack at the client-side.





Web Service Endpoint

SOAP-HTTP
<--------------------------------->

Client Driver
HTTP



Figure-1


So total time spent per job = Time(Network) + Time(Web Service Execution)
This model gives you the server throughput.

Thick client:
In this case, The client driver is thick meaning each job it sends to the web service goes through little expensive stack ( binding, parsing & serialization ) for each request.



Client Driver

Web Service Endpoint

SOAP-HTTP
<--------------------------------->

Web Services Stack



Figure-2


Total time spent per job = Time(Network) + Time(Web Service Execution) + Time(Client)
Some web services stacks, Time(Client) can be significant. This model gives us, end-to-end throughput.

So, modeling work loads for web services depends on your end requirement, client-side scalability and server CPU utilization. If we can get server CPU utilization to maximum, then we can either go with thin or thick clients. If we can't scale clients, then either we can run multiple instances of clients on same client machine or on different client machines. This gets tricky to measure since we need to aggregate the throughput from all the client instances in the steady state. Whatever your requirement is thin vs thick clients, always saturate the server CPU. This is the maximum business jobs per unit time you are going to get for the bucks!
Comments:

please give me your local area transport address in the city chennai (Tamil nadu).
Please send as early as poosible to my yahoo mail
iam going to utilise your transport
Thanks/regards
Mahaboob
Chanda nagar
hyd.

Posted by mahaboob on April 20, 2008 at 09:02 PM PDT #

Post a Comment:
  • HTML Syntax: NOT allowed

This blog copyright 2009 by bharath