473,406 Members | 2,356 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,406 software developers and data experts.

Slow web service response times

I have an ASP.NET application that makes 12 different web service calls
from a single method call. Each of the web services themselves don't
do much more than run a small query (I've run the queries elsewhere and
they complete virtually instantaneously) on some database and return a
dataset. As it so happens, the 12 calls are split up between 4
different web services on the same server, and the web services
themselves are ASP.NET apps built in C#. Anyway, I know that each
individual call usually returns in less than 10 seconds (first call).
I encounter problems only when I try to call them one after another in
my application.

The code looks something like this:
// create proxy objects
WSa.WebService a = new WSa.WebService();
....
WSd.WebService d = new WSd.WebService();

// Fill up datasets with web service calls
DataSet ds1 = a.Call1();
DataSet ds2 = a.Call2();
....
DataSet ds7 = c.Call(1);
....
DataSet ds12 = d.Call3();

// Do other processing with data
....

The most time-consuming call returns a chunk of data on the order of
2.5MB in size, but most of the SOAP messages returned are less than
150k.

When I put some timing code in there, I found that it could take from
~124 seconds to ~1290 seconds for the same 12 calls to complete (they
returned the same data every time in my tests). The server hosting the
web services did not ever appear to be under heavy load (I did a remote
desktop to it and put up task manager to watch).

I have tried running them asynchronously, and the total response time
for all of the calls to return -- I need all the data returned before I
can proceed, so I have to wait for all End calls to finish anyway --
still varies greatly. The one thing I learned from the asynchronous
calls is that certain calls among the 12 are far more likely to take
much longer than others. In fact, they take much longer than they
normally would if I just called each of them separately rather than all
12 in sequence. I even wrote a test application with buttons to do
just that, and the total time it takes for me to click all 12 buttons
and get a response is always less than 2 minutes.

Why is there such a variation in response time? What can I do to get
these web service calls to run faster?

Dec 7 '06 #1
1 8985
Hi,
As a last option i think you should go for compression as you are saying in
some calls data returned is about 2.5mb.In web services you use soap
extension to compress soap messages/data.Google for soap extension/process
message/webservices/compression and i am sure yiu will get complete working
code for compression in web services.You can also use gzip.dll found in
system32 folder for compression.If still you are not able to work around then
let me.I will try to provide complete working code for compression in web
services.

Thanks and Regards,
manish bafna

"lowlyscrub" wrote:
I have an ASP.NET application that makes 12 different web service calls
from a single method call. Each of the web services themselves don't
do much more than run a small query (I've run the queries elsewhere and
they complete virtually instantaneously) on some database and return a
dataset. As it so happens, the 12 calls are split up between 4
different web services on the same server, and the web services
themselves are ASP.NET apps built in C#. Anyway, I know that each
individual call usually returns in less than 10 seconds (first call).
I encounter problems only when I try to call them one after another in
my application.

The code looks something like this:
// create proxy objects
WSa.WebService a = new WSa.WebService();
....
WSd.WebService d = new WSd.WebService();

// Fill up datasets with web service calls
DataSet ds1 = a.Call1();
DataSet ds2 = a.Call2();
....
DataSet ds7 = c.Call(1);
....
DataSet ds12 = d.Call3();

// Do other processing with data
....

The most time-consuming call returns a chunk of data on the order of
2.5MB in size, but most of the SOAP messages returned are less than
150k.

When I put some timing code in there, I found that it could take from
~124 seconds to ~1290 seconds for the same 12 calls to complete (they
returned the same data every time in my tests). The server hosting the
web services did not ever appear to be under heavy load (I did a remote
desktop to it and put up task manager to watch).

I have tried running them asynchronously, and the total response time
for all of the calls to return -- I need all the data returned before I
can proceed, so I have to wait for all End calls to finish anyway --
still varies greatly. The one thing I learned from the asynchronous
calls is that certain calls among the 12 are far more likely to take
much longer than others. In fact, they take much longer than they
normally would if I just called each of them separately rather than all
12 in sequence. I even wrote a test application with buttons to do
just that, and the total time it takes for me to click all 12 buttons
and get a response is always less than 2 minutes.

Why is there such a variation in response time? What can I do to get
these web service calls to run faster?

Dec 8 '06 #2

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

9
by: j askey | last post by:
I have a strange bandwidth issue that I have finally tracked down to something fairly specific if anyone has any ideas... Setup: Win2003 Server, PHP 4.3.4, IIS6.0, ISAPI Network: DSL line with...
0
by: dyw55a | last post by:
Hi, I have a web service which have a web method to validate the user and password. I am not sure why it slow down after several person start to run it. I let it return interger. But when user...
2
by: Drew Stoddard | last post by:
We are working in C#/Winforms and are using asynchronous client-side web service calls (the Begin... and End... methods supplied by the web reference creation). Many of these calls are contained...
4
by: Vito DeCarlo | last post by:
Over the past week, I've been noticing that any websites (on this one particular web server) built with ASP.NET have unusually slow (5 second) response times when moving through the site. There...
2
by: Sven Thorsen | last post by:
I have a Web Service with a method that handles file uploads. The file is sent as a DIME attachment to the SOAP request. The post is successful, the file is received and the correct response is...
6
by: MadMan2004 | last post by:
Hello all! I'm having a problem with a project I'm working on and I'd like to ask for anyone's input that might be helpful. I'm building a rather large front-end application connecting to an...
13
by: rperreta | last post by:
I'm using VB .NET and it is extremely slow. I went through all the support channels a few months back and since then have stopped development on the project. We are losing money and I have...
5
by: =?Utf-8?B?V2FubmFiZQ==?= | last post by:
We have a page that is loading very slow. There is not a lot of data, not a lot of users are connected at the same time and the page does not produce an error, so I am not sure where to start to...
9
by: SAL | last post by:
I have an ASP.NET 2.0 app that takes about 17 seconds to load on first startup but then is very fast after that. As I understand it from some posts in June, this is caused by the loading of the App...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.