Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Maximum Concurrent Connections in ISAPI
#1
Delphi says TWebRequestHandler.MaxConnection is 32, which means 32 requests can be handled concurrently (of course, more client sessions can exist, but only 32 of them can be concurrently active and being processed).

Does this also account for IntraWeb? The maxmum number of sessions is very high (thousands, at least), but can we "only" have 32 concurrent active sessions being processed in ISAPI DLLs?
Reply
#2
Hi Dr. Bob,

IntraWeb ISAPI infrastructure doesn't have anything in common with the existing Delphi ISAPI layer. Our ISAPI layer was created from scratch and doesn't suffer from the old design problems that Delphi's ISAPI have. We don't use TWebRequest/TWebResponse either in any part of our code. It also performs much better.

From Delphi, the only thing that we actually use is the Winapi.Isapi2.pas unit, which is basically the httpext.h header translation.

So, I'd say that the limit is actually imposed by IIS. Certain Windows client OSes have a very low limit (IIRC, the limit 10 or so for Windows 7, 8, 10 but I couldn't find the source yet), but server editions can handle 5000 or more
Reply
#3
(10-30-2023, 07:37 PM)Alexandre Machado Wrote: IntraWeb ISAPI infrastructure doesn't have anything in common with the existing Delphi ISAPI layer. Our ISAPI layer was created from scratch and doesn't suffer from the old design problems that Delphi's ISAPI have. We don't use TWebRequest/TWebResponse either in any part of our code. It also performs much better.

That's good to know, I thought we were being limited by a request queue that was overflowing, but that turned out to be another problem. Thanks for confirming that there is no low limit, and certainly not 32.
Reply
#4
PS:

Windows client OS restrictions document: https://learn.microsoft.com/en-us/iis/tr...strictions

I couldn't find a similar document for server editions, except for a blog post exploring the options for ASP.NET on IIS, which also runs on top of w3wp.exe. These limits are clearly for ASP.NET request/processing pipeline only: https://learn.microsoft.com/en-us/archiv...nd-iis-6-0

Just out of curiosity the default setting for an ASP.NET application pool will be 12 concurrent connections per CPU. Unless you change it.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)