I checked the httpd.conf to see what the MaxClients setting was, and this is what I found:

MaxClients 1

The commit that added these directives is on Heroku's Github. Does there appear to be a rationale for a MaxClients setting of 1, or is it simply arbitrary? Are there any considerations I should make when increasing it?

2 Answers
2

Heroku dynos are designed to be a single unit of computation. For comparison:

A single-threaded, non-concurrent framework like Rails can process one request at a time.

Setting MaxClients 1 is simply telling your PHP dyno to only handle its one request at a time. Since the dyno is actually capable of handling many more requests that that, MaxClients can and should be raised to a number much larger, such as 256.

I understand MaxClients is too low. I'm trying to understand the why - why is the default setting 1, and what implications does that entail for changing it?
–
Brad KochAug 9 '12 at 14:55

1

You'll have to ask whoever checked in the code. And the implications is that the server will only handle one simultaneous connection, which is very close to pointless.
–
Michael Hampton♦Aug 13 '12 at 21:09