By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
443,626 Members | 2,202 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 443,626 IT Pros & Developers. It's quick & easy.

limit system resources for a request

P: n/a
Does anybody know of a best way to limit system resources (CPU/memory) for
each particular request? In my application based on user's parameters a
request may take considerable amount of time and system resources. This kind
of request may take 100% CPU and make all other requests in the queue halt.
While I don't want this request to simply time out, I'd like to limit
somehow the resources each request can allocate so one request does not halt
the whole application.

Any suggestions are greatly appreciated.

- Mike

Nov 19 '05 #1
Share this Question
Share on Google+
2 Replies


P: n/a
Michael Per wrote:
Does anybody know of a best way to limit system resources (CPU/memory) for
each particular request? In my application based on user's parameters a
request may take considerable amount of time and system resources. This kind
of request may take 100% CPU and make all other requests in the queue halt.
While I don't want this request to simply time out, I'd like to limit
somehow the resources each request can allocate so one request does not halt
the whole application.

Any suggestions are greatly appreciated.

- Mike


If the type of requests which cause 100% CPU fall into a simple, easily
identifiable category (e.g. requests from one page), then you may be
able to achieve your aim through the Async request model. This, in
combination with a low priority thread to perform the actual work would
lower your impact on other requests.

Course, then we get to how you manage your additional threads. Three
options:

1) Only 1 thread, deals with all processor intensive tasks in series.
Has the effect of serialising all such requests.
2) Launch one thread per request. Doesn't scale well when there are a
thousand requests.
3) Build a thread pool. Most complex option.

Nov 19 '05 #2

P: n/a
Damien, thank you for you response. Unfortunately they don't fall into an
easily identifiable category. It depends on user parameters and database
content. I am looking for more generic solution that I can apply on
application level to "protect" every request from monopolizing the system.

"Damien" <Da*******************@hotmail.com> wrote in message
news:11**********************@g44g2000cwa.googlegr oups.com...
Michael Per wrote:
Does anybody know of a best way to limit system resources (CPU/memory)
for
each particular request? In my application based on user's parameters a
request may take considerable amount of time and system resources. This
kind
of request may take 100% CPU and make all other requests in the queue
halt.
While I don't want this request to simply time out, I'd like to limit
somehow the resources each request can allocate so one request does not
halt
the whole application.

Any suggestions are greatly appreciated.

- Mike


If the type of requests which cause 100% CPU fall into a simple, easily
identifiable category (e.g. requests from one page), then you may be
able to achieve your aim through the Async request model. This, in
combination with a low priority thread to perform the actual work would
lower your impact on other requests.

Course, then we get to how you manage your additional threads. Three
options:

1) Only 1 thread, deals with all processor intensive tasks in series.
Has the effect of serialising all such requests.
2) Launch one thread per request. Doesn't scale well when there are a
thousand requests.
3) Build a thread pool. Most complex option.

Nov 19 '05 #3

This discussion thread is closed

Replies have been disabled for this discussion.