Re: Do Web services have a lease time?

Tech-Archive recommends: Fix windows errors by optimizing your registry



Sure:

public void Receive(XmlDocument TheXml)
{
System.Guid Guid = System.Guid.NewGuid();

string Path =
ConfigurationManager.AppSettings["IncomingAppFolder"] +
Guid.ToString() + ".xml";

TheXml.Save(Path);
}

That's it.

Note too that the error returned is NOT bubbled up from the Web
service. It's not like the Web service throws an error and returns it
to the caller. Rather, the caller cannot contact the Web service
anymore -- the initial call to the service times out.

Until you bounce IIS (the IIS on the calling server, not the target),
then it starts working fine again.

Deane



On Aug 4, 5:28 pm, Jesse Houwing <Jesse.houw...@xxxxxxxxxxxxxxxx>
wrote:
Hello Deane,

Thanks for the response.

The only thing this Web service does is accept a small XML file and
write it to the file system. That's it.

Additionally, the Web service works fine for 24 - 48 hours. Then it
starts timing out. When it does, no changes are made to the Web
service client or server. The IIS client is just restarted, and we're
back in business.

If it's that simple, can you show us the code?

Jesse



Deane

On Aug 4, 4:04 pm, Jesse Houwing <Jesse.houw...@xxxxxxxxxxxxxxxx>
wrote:

Hello Deane,

Is there a lease time on Web service requests?

No, there's no sucht thing

We have a Web service that stops responding after a couple days.
After a certain point in time, all requests to it get "The operation
has timed out." It just happens suddenly, every 48 hours or so, and
all requests begin fail.

What's odd is that it appears to be client-specific. After this
error appears, you can still pull up the WSDL in a browser and it
responds fine (the browser, after all, is a new client to the Web
service).

Additionally, once you restart IIS (on the client machine -- the
machine using the Web service), everything works fine again.

It's as if the Web service expires some kind of lease for the IIS
client and starts rejecting requests. By restarting IIS, it clears
some cache and it becomes a new client, with a new lease.

I'll looked around quite a bit, and the only reference I can find to
lease times is with .Net remoting. However, this is a Web service
-- I'm not doing a .Net-to-.Net remote invocation of anything.

Any ideas?

My guess would be an unproperly disposed/closed database connection
or something similar. It's my experience that it is almost always
something like that...

Jesse


.



Relevant Pages

  • RE: BizTalk 2004 SOAP Adapter Tuning, ThreadPool
    ... this is the case then it might be a design problem in your web service. ... If your web service is not designed correctly, this could lead to IIS ... requests to be queued. ... your SOAP and HTTP requests over these multiple hosts or host instances. ...
    (microsoft.public.biztalk.general)
  • Re: Do Web services have a lease time?
    ... After a certain point in time, all requests to it get "The operation ... It's obviously not the web service that stops responding, it's the client that stops working. ... It's as if the Web service expires some kind of lease for the IIS ...
    (microsoft.public.dotnet.framework.aspnet)
  • Repost: "Redirecting" web service
    ... I tried on the IIS group, ... we have a web service that has now been re-written using Asp.net. ... are know re-writing the app using ASP.net. ... What we found is that when the client makes a web service call, ...
    (microsoft.public.dotnet.framework.aspnet)
  • Re: Implementing a common SOAP Header across multiple Web Service Pages
    ... to set a client up to reference multiple Web ... the Web Service site would ... Your point about leaving the ASMX page as lean as possible and acting just ...
    (microsoft.public.dotnet.framework.webservices)
  • Re: Implementing a common SOAP Header across multiple Web Service Pages
    ... between my Web Service application and the client. ... public string SID; ... Web Service page, rather than to a dozen or so separate Web Service pages ... You can easily create a .ASMX file ...
    (microsoft.public.dotnet.framework.webservices)