Concurrent requests

Hi there,
Am after some help with the “concurrent Requests / queue” settings in the Administrator, please.

At the moment, it is disabled on our Production servers. And from I can tell - has never been any other way.

What is the result of using it?
It seems self-evident - I assume it means - handle simultaneous requests at the same time.
Which (again I assume) - makes the application more performant.
But what should the settings be?

I realise every app and its requirements are different…
But I am guessing that it is ALSO going to be hardware related.

Is there any such things as;

  • At memory less than XXX GB, or, less than YYY vCPUS : don’t even bother.
  • 2GB RAM / 1vCPU : The following … are a good starting point
  • 4GB RAM / 2vCPUs : …
  • Don’t bother at all - unless you have the following minimums?

I do realise - that I REALLY need to do some appropriate monitoring;

  • Choose a setting
  • throw XXX load at the server
  • Record how it goes.
  • Alter the load to YYY
  • Record how it goes.

Change a setting

  • Repeat…

But we don’t yet have Fusion Reactor OR the Java (DEBUG) skills to do it at the moment.

So I am just after an informed (if one exists) “starting point” - as opposed to just choosing blindly.

Thanks
Gavin.

I’m confused what your actual question is.

Hi @bdw429s
I have amended the original - but basically it is this;

What is the result of using it?
It seems self-evident - I assume it means - handle simultaneous requests at the same time.
Which (again I assume) - makes the application more performant.
But what should the settings be?

The setting limits the number of concurrent web requests that Lucee will process. Note that every proxy or web server (including CommandBox) have their own concurrent request limit. The smallest one in the chain will be the most limiting.

Correct.

It’s more a matter of saving the app from crashing under unbounded load by limiting how much it’s doing at one time.

If you’re not having issues, I wouldn’t touch it. By default, Lucee has no limit, unlike Adobe CF. If you’re using CommandBox, it has a default limit of 30, BTW.

For some sort of API which has very fast requests that only take a couple ms and put very little load on the server, you could allow hundreds of concurrent request. But if your app is doing heavy stuff like cranking out PDFs or something CPU intensive, you may want to throttle it down.

But honestly, I wouldn’t touch it until you’ve had issues AND done root cause analysis to know the issue relates to requests stacking up or dogpiling on the server. FusionReactor will be invaluable in determining this.

2 Likes