Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature Request: per-application maximum and minimum process limts #287

Closed
FooBarWidget opened this issue May 29, 2014 · 5 comments
Closed

Comments

@FooBarWidget
Copy link
Member

From piotr.banasik on January 13, 2009 01:03:48

I'd like to see a way to be able to limit the # of processes per
application, I'd like to especially see a setting for minimum processes
since its easy to starve the other applications if you're running a few
ruby apps on the same apache, and I don't see any sane way of configuring
the current limit options to utilize the server fully, but at the same time
make sure that no application is prevented from starting entirely

for example, when running 4 applications on a server, with a 20 process
limit total, App1 spawns 7 processes, App2 spawns 8, App3 spawns 5 ... a
request comes for app4 and passenger is unable to spawn a process to handle
it and thus the request fails entirely .. other than limiting all apps to
no more than 5 processes in this case .. and idle the server severly when
only say 2 of those apps are being used ..

I guess another name for this request could be "reserved slots" .. where
you can set the number of reserved slots per app, this way its sort of like
the max processes per app, but more flexible, allowing all apps to burst,
but still making sure the other apps can start atleast one worker.

another take on this could be that these reserved slots actually sit
outside of the process limit, squeezing an extra process or two in there in
order to be able to service the request

Original issue: http://code.google.com/p/phusion-passenger/issues/detail?id=186

@FooBarWidget
Copy link
Member Author

From honglilai on March 23, 2009 02:12:21

Labels: -Type-Defect Type-Enhancement

@FooBarWidget
Copy link
Member Author

From drosboro on August 08, 2009 20:31:15

I'd love to see something like this. Preferably a http-level option called passenger_min_instances_per_app, and
then server-level options like passenger_max_instances and passenger_min_instances.

@FooBarWidget
Copy link
Member Author

From jordan.ritter on September 16, 2009 19:10:51

My case is slightly different, but I thinkthe features as described would result in the same thing -- I have 3 nginx
vhosts (server blocks), and I'd like to limit one of them to 1 instance (wraps a subsystem that doesn't like
concurrency).

In this case, global limits as-is are fine, would just like to be able to override them inside the server block.

@FooBarWidget
Copy link
Member Author

From cbjones1 on August 11, 2010 14:13:05

We (so far) have generally configured all hosts to be capable of running every rails app, of which we have a dozen or so. Some of these have UIs but mostly they just expose some REST-based APIs. One machine doesn't provide redundancy and there isn't enough work to completely consume two machines from just one application so this is why we do this.

Anyway, having relatively inactive instances of one application shut down faster to provide more resources to a more heavily used app would be useful. I suspect for now we'll look at limiting the maximum instances per application appropriately although this is not optimal for fully utilizing the machines.

@FooBarWidget
Copy link
Member Author

From honglilai on September 15, 2010 07:32:18

We now have per-app minimums.

Status: Fixed
Labels: Milestone-3.0.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant