Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsFree MagazinesWhite PapersSubmit Content
Discussion GroupsASP.NETWindows FormsLanguages.NET FrameworkVisual Studio.NET
Articles.NET FrameworkASP.NETToolsWindows Forms
.NET DirectoryOpen Source ProjectsUser GroupsWeb Resources
Related Topics
Visual Basic 6SQL ServerMS AccessOther DB ProductsMS Server ProductsMore Topics ...

.NET Forum / ASP.NET / Web Services / March 2008

Tip: Looking for answers? Try searching our database.

First request takes a long time

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Norbert Pürringer - 26 Mar 2008 11:07 GMT
What are the different reasons, that the very first webservice request
last a long time? In my case the first request last about 8 seconds,
the second request is processed in a few milliseconds. Is there a way
to advance the performance of the first webservice request? Calling my
webservice in IE takes a long time too, but then, every request is
processed immediately (even then, if the IE is closed and opened in
the meantime, IE is able to receive the first request very fast),
whereas my client is always a lame duck while requesting the first
request after closing and opening the client.

My webservice is written in C# (.NET 2.0)

Thank you,
Norbert
Cowboy (Gregory A. Beamer) - 26 Mar 2008 15:45 GMT
> What are the different reasons, that the very first webservice request
> last a long time?

It is doing JIT compilation (turning IL into in-memory code).

> In my case the first request last about 8 seconds,
> the second request is processed in a few milliseconds.

Sounds about right.

> Is there a way
> to advance the performance of the first webservice request?

There is a precompile.axd with web applications, but I am not sure if it
will walk a service. You can set up a console application that makes calls
on all of the methods and force compilation.

The best way, overall, is move your code to a separate library and then
consider ngening that assembly. There is still a JIT hit on the service
itself, but with all of the code in the library, you will find it is faster.
Of course, this makes it a bit more time consuming to switch out assemblies,
although you do have the option, if properly versioning, of sticking the
second version in the GAC before deploying the service and reducing
interruption.

> Calling my
> webservice in IE takes a long time too, but then, every request is
> processed immediately (even then, if the IE is closed and opened in
> the meantime, IE is able to receive the first request very fast),
> whereas my client is always a lame duck while requesting the first
> request after closing and opening the client.

This is a just an appearance thing, as IE is multi-threaded and your app
probably is not. You can fake this appearance by putting service calls on
another thread and leaving the client app responsive (repaint, etc.)

> My webservice is written in C# (.NET 2.0)

Language not important here. :-)

Signature

Gregory A. Beamer
MVP, MCP: +I, SE, SD, DBA

Subscribe to my blog
http://gregorybeamer.spaces.live.com/lists/feed.rss

or just read it:
http://gregorybeamer.spaces.live.com/

*************************************************

| Think outside the box!

*************************************************
nenzax - 30 Mar 2008 05:40 GMT

Rate this thread:







Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.