Re: Urgent: Slow Response to First Request



Hi Tomas,
Thanks for responding so quickly. I will take a look at the article you
pointed out. I usually set AppDomains for all the biztalk assemblies anyway
because that helps me control the enterprise library logging, configuration
data retrieval etc. I'll check out what settings can be added in for the app
domains.

I was also thinking about the "dummy" service request method and was
wondering if it would have to be a full fledged test message (ie) the full
schema. But i guess just retrieving the WSDL should be enough to kick the
webservices into life. I will try this out asap and post my findings.

Rgds
Benjy

"Tomas Restrepo [MVP]" wrote:

Benjamin,
Im using Biztalk 2006 on Windows 2003. I have a set of orchestrations
published as web services and these in turn call some other .NET
webservices.
The target webservices have been unit tested and perform well. The Biztalk
services however take very long time when they are first called or after a
period of inactivity.

I found an old post here http://www.webservertalk.com/message1368724.html
which suggests using HttpBatchSize . But that key doesnt exist for 06. Any
ideas if it should be there or is it renamed or do we have to create it
ourselves?

You might be getting hit by two different issues. The first one is that
depending on how you have your BizTalk configured, it might unload certain
assemblies (like your orchestrations) after a certain period of inactivity.
You can tune this behavior by forcing biztalk to load your assemblies into a
separate appdomain and configure the approrpriate settings for it, which are
documented here: http://msdn2.microsoft.com/en-us/library/aa578610.aspx

The second issue (and the one that usually causes more trouble) is ASP.NET
itself. Your published webservices execute inside IIS in your ASP.NET
application. ASP.NET, unfortunately, has some hardcoded limits which cause
it to unload an application's appdomain after some inactivity, and there's
no options or settings you can use to avoid that behavior (even the
inactivity period is hardcoded by the runtime and not modifyable). The only
option I've seen to work around this is to create a small script that hits
the webservice (even if it is just to retrieve its wsdl) at regular
intervals, to ensure it never gets unloaded.


--
Tomas Restrepo
http://www.devdeo.com/
http://www.winterdom.com/weblog/


.



Relevant Pages

  • Re: Creating Appdomain for BizTalk Assemblies
    ... by putting those assemblies in a separate AppDomain and ... But when I searched for how to create an AppDomain, it was done all in the ... assign that to BizTalk assembly. ... of how to do this for BizTalk assemblies, ...
    (microsoft.public.biztalk.general)
  • Re: Creating Appdomain for BizTalk Assemblies
    ... assemblies in separate appdomains. ... an appdomain permanently and then use this config file to tell biztalk to run ... BizTalk will create it in it's own service process based on the configuration you put in btsntsvc.exe.config. ...
    (microsoft.public.biztalk.general)
  • BTSDEPLOY Issue remote server
    ... I"m trying to deploy my biztalk project remotly, ... Saved schema "xxx_Joborder.tempJoborderTest, xxx Joborder, Version=1.0.0.0, ... Saved port type "xxx_Joborder.testJoIncomingPortType". ... Deployed the following 1 BizTalk assemblies: ...
    (microsoft.public.biztalk.general)
  • Automated build environment and BizTalk 2006 issue
    ... Our biztalk dev team has come across an issue that is becoming quite time ... Basically the problem is - after running a build on the TFS server, ... MSBuild updates version numbers on all assemblies, ... But in BizTalk artifacts the ...
    (microsoft.public.biztalk.general)
  • RE: Security requirements for deployment of assemblies
    ... For BizTalk Server 2004, we require that BizTalk assemblies be GAC'd and ... don't support placing assemblies elsewhere. ... Administator/Power User privileges for your processing servers, ... >We are running in a datacenter environment, and power user/admin rights ...
    (microsoft.public.biztalk.general)