Low request time

Hello

My question is not really directly connected with Lucee, but hopefully
somebody has helpful ideas :wink:

We live in windows 2008R2 → IIS7.5 → Boncode → Tomcat 8 → Java 8
environment.

I always wondered, why i lose some speed somewhere compared to
non-windows-Systems i know.
I’m sure, it’s a matter of configuration and tuning.

I have the site http://www.hadiamedical.ch, which i can use to measure the
loading time with Firebug. The site is quite small, i use RamCache for
everything, The cache time is set to one day.

If i call the site, it needs a moment until something will be rendered: 1.2
sec. A reload delivers the page in under 200ms. I can click on every other
main navigation item, every page will be served in under 200ms. This is
okay, i think.

Now, i leave the site alone for one minute, afterwards i click the same
page again and i have to wait again for 1.2 sec. After that, everything
runs smoothly again. The server is bored to death anyway: No real CPU-load
(8 Cores on 3GHz, 32GB RAM) . I measured the memory configuration with
VisualVM, looks good to me.

I have this behaviour on every CFML-Server, independly what kind of CMS or
other web apps the web sites are using.

The application pool (per site) of the websites are configured, that they
never recycle.

My question is: Who is taking a nap?

Any ideas are very welcome.

Thanks a lot

Martin

my bet is on BonCode.

Unfortunately i think the same. In terms of IIS i applied all well known
tuning and performance tweaks. Our Webmail and ticketing system are .NET
Apps, the loading time is around 90ms. I randomly checked some PHP-sites
using shops and CMS: Every site responds under 400 ms, average around 250
ms.

I really do not understand is the up and down of the response time. I’m
measuring my actual project. The site responds in 1,2 secs. goes down to
300 ms, again up to 1 sec. and so on.

I hope that Bilal has someting to say or has even some hints how to go on
with this problem. I wouldn’t say anything, if we counting milliseconds,
but we lose something more than 500 ms somewhere.

Are any other people here using a windows environment?

what happens if you hit Tomcat directly, i.e. on port 8080 (or whatever
port it’s listening)… do you get the same issue?

It behaves like it should, the first GET, which is the important one, is on
every site around 200 ms.

Now we could say, that IIS is the troublemaker, right? Not really, IIS is
configured identically on all servers. All PHP and .NET sites respond very
fast.

Do i have a communication problem between Tomcat and IIS? BonCode?

that’s what I thought.

my bet is on BonCode. Bilal did a great job there, but I think that
there are some issues involved, and if I have to put my money on whether
there’s an issue with IIS or with BonCode then I go with BonCode since
there is a much smaller user base with it.

on a somewhat personal note, I switched my servers from IIS to nginx a
couple of years ago, and never looked back. they’ve been running much
more smoothly and efficiently.

Igal Sapir
Lucee Core Developer
Lucee.org http://lucee.org/On 2/10/2015 5:02 AM, Martin Schaible wrote:

what happens if you hit Tomcat directly, i.e. on port 8080 (or
whatever port it's listening)...  do you get the same issue?

It behaves like it should, the first GET, which is the important one,
is on every site around 200 ms.

Now we could say, that IIS is the troublemaker, right? Not really, IIS
is configured identically on all servers. All PHP and .NET sites
respond very fast.

Do i have a communication problem between Tomcat and IIS? BonCode?

You received this message because you are subscribed to the Google
Groups “Lucee” group.
To unsubscribe from this group and stop receiving emails from it, send
an email to lucee+unsubscribe@googlegroups.com
mailto:lucee+unsubscribe@googlegroups.com.
To post to this group, send email to lucee@googlegroups.com
mailto:lucee@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/lucee/9598e7db-d835-4e3c-a367-8f6728152eee%40googlegroups.com
https://groups.google.com/d/msgid/lucee/9598e7db-d835-4e3c-a367-8f6728152eee%40googlegroups.com?utm_medium=email&utm_source=footer.
For more options, visit https://groups.google.com/d/optout.

@Martin,

what happens if you hit Tomcat directly, i.e. on port 8080 (or whatever
port it’s listening)… do you get the same issue?On 2/9/2015 4:30 PM, Martin Schaible wrote:

Hello

My question is not really directly connected with Lucee, but hopefully
somebody has helpful ideas :wink:

We live in windows 2008R2 → IIS7.5 → Boncode → Tomcat 8 → Java
8 environment.

I always wondered, why i lose some speed somewhere compared to
non-windows-Systems i know.
I’m sure, it’s a matter of configuration and tuning.

I have the site http://www.hadiamedical.ch, which i can use to measure
the loading time with Firebug. The site is quite small, i use RamCache
for everything, The cache time is set to one day.

If i call the site, it needs a moment until something will be
rendered: 1.2 sec. A reload delivers the page in under 200ms. I can
click on every other main navigation item, every page will be served
in under 200ms. This is okay, i think.

Now, i leave the site alone for one minute, afterwards i click the
same page again and i have to wait again for 1.2 sec. After that,
everything runs smoothly again. The server is bored to death anyway:
No real CPU-load (8 Cores on 3GHz, 32GB RAM) . I measured the memory
configuration with VisualVM, looks good to me.

I have this behaviour on every CFML-Server, independly what kind of
CMS or other web apps the web sites are using.

The application pool (per site) of the websites are configured, that
they never recycle.

My question is: Who is taking a nap?

Any ideas are very welcome.

Thanks a lot

Martin


You received this message because you are subscribed to the Google
Groups “Lucee” group.
To unsubscribe from this group and stop receiving emails from it, send
an email to lucee+unsubscribe@googlegroups.com
mailto:lucee+unsubscribe@googlegroups.com.
To post to this group, send email to lucee@googlegroups.com
mailto:lucee@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/lucee/2a546c21-fe1e-40ac-8712-82a4f436fb8f%40googlegroups.com
https://groups.google.com/d/msgid/lucee/2a546c21-fe1e-40ac-8712-82a4f436fb8f%40googlegroups.com?utm_medium=email&utm_source=footer.
For more options, visit https://groups.google.com/d/optout.

Martin,

If you turn on debugging, what does it return? Always short times?

What happens with static pages?

If you have a simple index.cfm which is empty, what does it return?

I have a few sites running with Tomcat and Boncode and it normally is not an issue. It looks like it is a “keep connection alive for n seconds” kind of thing.

Perhaps Boncode is creating a new connection every time you leave the server alone for 1 minute…

Sincerely
Gert Franz

RASIA GmbH

Spittelgasse 7

5103 Moeriken-Wildegg

Email: mailto:Gert_Franz @Gert_Franz
Skype: gert.franz

Phone Switzerland: +41 76 5680 231Von: lucee@googlegroups.com [mailto:lucee@googlegroups.com] Im Auftrag von Martin Schaible
Gesendet: Dienstag, 10. Februar 2015 19:36
An: lucee@googlegroups.com
Betreff: [Lucee] Re: Low request time

my bet is on BonCode.

Unfortunately i think the same. In terms of IIS i applied all well known tuning and performance tweaks. Our Webmail and ticketing system are .NET Apps, the loading time is around 90ms. I randomly checked some PHP-sites using shops and CMS: Every site responds under 400 ms, average around 250 ms.

I really do not understand is the up and down of the response time. I’m measuring my actual project. The site responds in 1,2 secs. goes down to 300 ms, again up to 1 sec. and so on.

I hope that Bilal has someting to say or has even some hints how to go on with this problem. I wouldn’t say anything, if we counting milliseconds, but we lose something more than 500 ms somewhere.

Are any other people here using a windows environment?


You received this message because you are subscribed to the Google Groups “Lucee” group.
To unsubscribe from this group and stop receiving emails from it, send an email to lucee+unsubscribe@googlegroups.com.
To post to this group, send email to lucee@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/lucee/e34b54d6-bb62-4397-b14a-ca4a8c4dbfdb%40googlegroups.com https://groups.google.com/d/msgid/lucee/e34b54d6-bb62-4397-b14a-ca4a8c4dbfdb%40googlegroups.com?utm_medium=email&utm_source=footer .
For more options, visit https://groups.google.com/d/optout.

https://lh5.googleusercontent.com/-Hb6xrtGzkV8/VNpbAutcVlI/AAAAAAAAA-M/JaGa5fjWewI/s1600/vm2.png

https://lh6.googleusercontent.com/-mO1TZYkwgsA/VNpa7VOerrI/AAAAAAAAA-E/IhtdxGL_2Ro/s1600/vm1.png
Hello

Thanks for tips. i did already test with some really simple htm, jsp and
cfm pages. I made the experience, that if call the page over the admin
port, that the time is 1-3ms (Repeated 50 times by hitting refresh). Doing
the same over IIS the time jumps around from 6 to 25 ms (Repeated 50 times
by hitting refresh). Mostly the time is in between 6 to 8 ms.

I’m watching the memory behaviour of java constantly with VisualVM. From my
point of view, the whole server is nearly in the state of getting bored.
Unfortunately VisualVM doesn’t offer to get more infos about GC and the
plugin GCViewer will work.
.
I also had the idea, that somebody drops connections. IIS has a keep alive
function, which is active. I need to investigate, how Boncode deals with
this.

Hi,

We’re using Windows and what you’re experiencing I wouldn’t say is “normal”

Here would be my approach

  1. Create a new blank site with just an Application.cfc and index.cfm and
    Write out hello World
  2. Hit the site with tomcat directly, measure the time in something like
    firefox or chrome dev tools on the network tab time to first byte
  3. Turn on Debugging look at the time for the execution of the page should
    be near 0 ms compare the two,
  4. Hit via iis and boncode, rinse and repeat compare the two.

There are two many factors to just point at Boncode including concurrency
and what else is going on on the server.

Have you tweaked the Railo/Lucee settings since installing is it using the
default JVM memory settings because if the system is running low on memory
and doing Garbage collection then that could manifest itself as random
pauses. But there are two many factors to guess so its really a case of
systematically working your way front to back.

If you want some help commercially, Rasia are well geared up to point you
in the right direction ?

Cheers

AlexOn 10 February 2015 at 18:35, Martin Schaible <@Martin_Schaible> wrote:

my bet is on BonCode.

Unfortunately i think the same. In terms of IIS i applied all well known
tuning and performance tweaks. Our Webmail and ticketing system are .NET
Apps, the loading time is around 90ms. I randomly checked some PHP-sites
using shops and CMS: Every site responds under 400 ms, average around 250
ms.

I really do not understand is the up and down of the response time. I’m
measuring my actual project. The site responds in 1,2 secs. goes down to
300 ms, again up to 1 sec. and so on.

I hope that Bilal has someting to say or has even some hints how to go on
with this problem. I wouldn’t say anything, if we counting milliseconds,
but we lose something more than 500 ms somewhere.

Are any other people here using a windows environment?


You received this message because you are subscribed to the Google Groups
“Lucee” group.
To unsubscribe from this group and stop receiving emails from it, send an
email to lucee+unsubscribe@googlegroups.com.
To post to this group, send email to lucee@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/lucee/e34b54d6-bb62-4397-b14a-ca4a8c4dbfdb%40googlegroups.com
https://groups.google.com/d/msgid/lucee/e34b54d6-bb62-4397-b14a-ca4a8c4dbfdb%40googlegroups.com?utm_medium=email&utm_source=footer
.

For more options, visit https://groups.google.com/d/optout.


Alex Skinner
Managing Director

Pixl8 Interactive, 3 Tun Yard, Peardon Street, London
SW8 3HT, United Kingdom

T: +44 [0] 845 260 0726* W: www.pixl8.co.uk* E: info@pixl8.co.uk

Follow us on: Facebook http://www.facebook.com/pixl8 Twitter
http://www.twitter.com/pixl8 LinkedIn http://www.linkedin.com/pixl8

CONFIDENTIAL AND PRIVILEGED - This e-mail and any attachment is intended
solely for the addressee, is strictly confidential and may also be subject
to legal, professional or other privilege or may be protected by work
product immunity or other legal rules. If you are not the addressee please
do not read, print, re-transmit, store or act in reliance on it or any
attachments. Instead, please email it back to the sender and then
immediately permanently delete it. Pixl8 Interactive Ltd Registered in
England. Registered number: 04336501. Registered office: 8 Spur Road,
Cosham, Portsmouth, Hampshire, PO6 3EB

@Igal:

I had also the idea to run tests with an alternative connector, which i
will do.
Logging is switched off in production, on in developement, makes no
difference.

can you try to connect IIS to Tomcat via the http APR connector (as
opposed to AJP)? you can do it with IIS’ ARR. see

if you can test IIS with Tomcat without BonCode then you’d be able to
tell immediately whether BonCode plays a role in this issue or not.

I sincerely hope that I’m wrong about it, so please let us know your
findings.

p.s. if you have the BonCode logging enabled – turn it off and check if
it still happens.

Igal Sapir
Lucee Core Developer
Lucee.org http://lucee.org/On 2/10/2015 10:35 AM, Martin Schaible wrote:

my bet is on BonCode.

Unfortunately i think the same. In terms of IIS i applied all well
known tuning and performance tweaks. Our Webmail and ticketing system
are .NET Apps, the loading time is around 90ms. I randomly checked
some PHP-sites using shops and CMS: Every site responds under 400 ms,
average around 250 ms.

I really do not understand is the up and down of the response time.
I’m measuring my actual project. The site responds in 1,2 secs. goes
down to 300 ms, again up to 1 sec. and so on.

I hope that Bilal has someting to say or has even some hints how to go
on with this problem. I wouldn’t say anything, if we counting
milliseconds, but we lose something more than 500 ms somewhere.

Are any other people here using a windows environment?

You received this message because you are subscribed to the Google
Groups “Lucee” group.
To unsubscribe from this group and stop receiving emails from it, send
an email to lucee+unsubscribe@googlegroups.com
mailto:lucee+unsubscribe@googlegroups.com.
To post to this group, send email to lucee@googlegroups.com
mailto:lucee@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/lucee/e34b54d6-bb62-4397-b14a-ca4a8c4dbfdb%40googlegroups.com
https://groups.google.com/d/msgid/lucee/e34b54d6-bb62-4397-b14a-ca4a8c4dbfdb%40googlegroups.com?utm_medium=email&utm_source=footer.
For more options, visit https://groups.google.com/d/optout.

That sounds like an interesting scenario indeed.
Normally the IIS overhead should be minimal after warm-up, really not
noticeable at all even when compared to tomcat direct access.

Is there a way for you to run the connection monitoring on a specific empty
.cfm page on both ports.
e.g.:
www.mysite.com/empty.cfm
I would also suggest you experiment with two different values for your
polling.
a) inside the timeout, e.g. every 15 seconds
b) outside the timeout, e.g. every 5 minutes.

I would like to exclude anything that would prevent the channel from
closing/hanging.
When you move the timeout to 60 seconds and get the generic error it could
be that you have used all connections inadvertently.
I would also check whether all available AJP connections have been used on
the tomcat side (the host manager on tomcat can show you the status). This
would also be a good indicator that something is preventing the channel
from closing (that could be the reason you have such a low connection
timeout and need to clear the channel), which in-turn causes frequent new
tcp-ip connections to be formed etc. (I see wheels within wheels ;o)

If you contact me via the project contact list we can see whether I can
replicate your setup.

Best,
Bilal>

Hi Bilal

Thanks for answering. Actually i have connectionTimeout=“20000”, which i
will change afterward to the new value.

The idle timout of the application pools is set to zero. My application
pools never sleep or getting recycled.

I added one site to the monitoring: The upper chart shows the site using
iis, the lower chart over the admin port, eg. www.mysite.ch://news.
The site will be measured every 5 minutes.

https://lh6.googleusercontent.com/-hpApm8HexeI/VNy2ZfLckGI/AAAAAAAAA-c/M1LQcR5esXc/s1600/monitoring.png

One situation is really strange: I can reload a page over and over, maybe
50 times, the measured time is constantly around a second. From one refresh
to the other, the time drops down to 300 ms

The small speed.cfm behaves now very well. The times IIS versus Tomcat
directly are equal at 1-2 ms. On the other hand, our very simple intranet
page jumps up and down from 20 ms to 500 ms.

I sounds to me like a kind of a hickup. Timeouts somewhere and if yes, how
to measure?

What do you use IIS for apart from serving static content and passing requests off to Lucee?

Mark Drew

develop • deploy • deliver
http://charliemikedelta.com ttp://charliemikedelta.com> On 12 Feb 2015, at 15:42, Jonathan Brookins <@Jonathan_Brookins> wrote:

Igal, the nginx sounds interesting. Would you think it would be worth looking into replacing IIS with nginx on the Win 2003 machine that will eventually be the Lucee server? Any caveats I should know before attempting it?

Also I can create an EC2 instance on Amazon for us to play with if that is
easier to recreate your server?

Good idea, but i’m really a virgin in this, never used

What do you think about a remote session, that you can have a close view to
my box?

production on Win 2008R2 – nginx is superb! my websites perform much
better than with IIS, and I’ve measured everything when it comes to
performance, both on the server and on the client sides.

once you understand the config file it’s extremely simple to use as
well, and it’s easy to copy & paste config snippets that others share
with you (as opposed to be given a list of 10 steps that you much follow
to the letter in the GUI).

there’s lots of documentation about it, and the nginx mailing list is
very responsive.

an extra benefit is that it’s cross platform, so if at some point you
decide to move from Windows to *nix systems, there’s one less thing to
worry about.

Igal Sapir
Lucee Core Developer
Lucee.org http://lucee.org/from my personal experience – running several e-commerce sites in

On 2/12/2015 8:03 AM, Mark Drew wrote:

What do you use IIS for apart from serving static content and passing
requests off to Lucee?

Mark Drew

develop • deploy • deliver
http://charliemikedelta.com ttp://charliemikedelta.com

On 12 Feb 2015, at 15:42, Jonathan Brookins <@Jonathan_Brookins mailto:Jonathan_Brookins> wrote:

Igal, the nginx sounds interesting. Would you think it would be
worth looking into replacing IIS with nginx on the Win 2003 machine
that will eventually be the Lucee server? Any caveats I should know
before attempting it?


You received this message because you are subscribed to the Google
Groups “Lucee” group.
To unsubscribe from this group and stop receiving emails from it, send
an email to lucee+unsubscribe@googlegroups.com
mailto:lucee+unsubscribe@googlegroups.com.
To post to this group, send email to lucee@googlegroups.com
mailto:lucee@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/lucee/0A76A98E-2F63-4447-BF7A-7FC2577BD5AC%40gmail.com
https://groups.google.com/d/msgid/lucee/0A76A98E-2F63-4447-BF7A-7FC2577BD5AC%40gmail.com?utm_medium=email&utm_source=footer.
For more options, visit https://groups.google.com/d/optout.

but IIS doesn’t support .htaccess either, does it?

and you’re right, I do not offer hosting services, but nginx is a
generic reverse proxy server that can also front mail servers, ftp
servers, etc. I’ve actually heard of many users who front their apache
httpd with nginx, and claim that it improves performance… go figure.

Igal Sapir
Lucee Core Developer
Lucee.org http://lucee.org/On 2/12/2015 8:27 AM, Michael Hnat wrote:

You’re right on the one hand. Nginx is sure the best Webserver
actually. But it also have some missing features like no .htaccess
support, etc.

If you’re running a server with several e-commerce sites where you are
managing everthing this is fine. If you’re offering a hosting service
where customers are able to do things on their own (it’s not only the
webserver, it is also the managing of FTP, Mail and DNS Settings,
etc.) with a control panel, then nginx is not the best solution for that.

And exactly this is the point where we don’t want and can’t move to
nginx or linux. But the performance problem is still here. And it’s
just fascinating, because we can’t see why only the .cfm stuff is
slow. static files, asp and php - no problem.

Michi


Von: “Igal @ Lucee.org” <@Igal>
Gesendet: Donnerstag, 12. Februar 2015 17:09
An: lucee@googlegroups.com
Betreff: Re: [Lucee] Low request time

from my personal experience – running several e-commerce sites in
production on Win 2008R2 – nginx is superb! my websites perform much
better than with IIS, and I’ve measured everything when it comes to
performance, both on the server and on the client sides.

once you understand the config file it’s extremely simple to use as
well, and it’s easy to copy & paste config snippets that others share
with you (as opposed to be given a list of 10 steps that you much
follow to the letter in the GUI).

there’s lots of documentation about it, and the nginx mailing list is
very responsive.

an extra benefit is that it’s cross platform, so if at some point you
decide to move from Windows to *nix systems, there’s one less thing to
worry about.

Igal Sapir
Lucee Core Developer
Lucee.org http://lucee.org/

On 2/12/2015 8:03 AM, Mark Drew wrote:

What do you use IIS for apart from serving static content and passing
requests off to Lucee?

Mark Drew

develop • deploy • deliver
http://charliemikedelta.com ttp://charliemikedelta.com

On 12 Feb 2015, at 15:42, Jonathan Brookins <@Jonathan_Brookins mailto:Jonathan_Brookins> wrote:

Igal, the nginx sounds interesting. Would you think it would be
worth looking into replacing IIS with nginx on the Win 2003 machine
that will eventually be the Lucee server? Any caveats I should know
before attempting it?

You received this message because you are subscribed to the Google
Groups “Lucee” group.
To unsubscribe from this group and stop receiving emails from it,
send an email to lucee+unsubscribe@googlegroups.com
mailto:lucee+unsubscribe@googlegroups.com.
To post to this group, send email to lucee@googlegroups.com
mailto:lucee@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/lucee/0A76A98E-2F63-4447-BF7A-7FC2577BD5AC%40gmail.com
https://groups.google.com/d/msgid/lucee/0A76A98E-2F63-4447-BF7A-7FC2577BD5AC%40gmail.com?utm_medium=email&utm_source=footer.
For more options, visit https://groups.google.com/d/optout.


You received this message because you are subscribed to the Google
Groups “Lucee” group.
To unsubscribe from this group and stop receiving emails from it, send
an email to lucee+unsubscribe@googlegroups.com
mailto:lucee+unsubscribe@googlegroups.com.
To post to this group, send email to lucee@googlegroups.com
mailto:lucee@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/lucee/54DCCFFF.8020601%40lucee.org
https://groups.google.com/d/msgid/lucee/54DCCFFF.8020601%40lucee.org?utm_medium=email&utm_source=footer.
For more options, visit https://groups.google.com/d/optout.


You received this message because you are subscribed to the Google
Groups “Lucee” group.
To unsubscribe from this group and stop receiving emails from it, send
an email to lucee+unsubscribe@googlegroups.com
mailto:lucee+unsubscribe@googlegroups.com.
To post to this group, send email to lucee@googlegroups.com
mailto:lucee@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/lucee/39cceea7630841fbb080e5bf1c535eb2%40bluegras.de
https://groups.google.com/d/msgid/lucee/39cceea7630841fbb080e5bf1c535eb2%40bluegras.de?utm_medium=email&utm_source=footer.
For more options, visit https://groups.google.com/d/optout.

I’m sorry, i did read this wrong:

If there there is a connectionTimeout parameter, change it to something

reasonable or remove it (blank will persist forever). Fair warning, some
connection go stale and the timeout allows the recyling of those.

I removed the parameter now

Changing the value to 60000 didn’t help. Since i changed this value, i got
twice this error:

Generic Connector Communication Error:


Please check and adjust your setup:
Ensure that Tomcat is running on given host and port.
If this is a timeout error consider adjusting IIS timeout by changing
executionTimeout attribute in web.config (see manual).

Never ever had this before. Maybe a sign in which direction the problem
points?

Martin,
what you are describing is most likely a timeout setting for the AJP
connection that you have somewhere in the system.
There is overhead associated with establishing AJP connections to tomcat.
This is true for all connection technologies that use AJP.
It is in the neighborhood of 300-500ms per connection. The good news is
that we use a connection pool and reuse the connections so that after the
connections are established, the reuse overhead is minimal.

There are two things to further look at to see whether this is the issue:
On the Tomcat side please check your definition of the AJP channel in the
server.xml file
Find a line like this:
<Connector port=“8009” protocol=“AJP/1.3” redirectPort=“8445”
tomcatAuthentication=“false” maxThreads=“500” connectionTimeout=“60000” />
If there there is a connectionTimeout parameter, change it to something
reasonable or remove it (blank will persist forever). Fair warning, some
connection go stale and the timeout allows the recyling of those.

On the IIS side check the “Idle Timeout (minutes)” of your application
pool. You can find it under the advanced settings for the application
pool in the Process Model section. The default should be 20 minutes but
see whether it got modified.

Hope this helps,
Bilal>