Albert Casademont
Albert Casademont
Taking a look at this today, let's see what we can find!
I'm starting from the basics, just a simple "ab -n 2 -c 2 http://127.0.0.1:8080/" First weird thing I saw: `ab` seems to open one more connection than needed when concurrency...
In any case, to continue with this, we should not emit that `Script did not return a valid HTTP response. Maybe it has called exit() prematurely?` error when it's the...
I ended up doing some tcpdumps to see why `ab` was complaining of the connection being reset and the problem seems to be some TCP RST packets emitted by the...
Attaching the tcpdumps capture for both reactphp and node if that might help. [tcpdump.zip](https://github.com/php-pm/php-pm/files/4006303/tcpdump.zip)
Tried it also with another benchmark tool written in go called hey (https://github.com/rakyll/hey). Doesn't miserably fail on the first connection reset like AB, but it still does fail quite often...
@WyriHaximus seems like the problem is a very low TCP backlog value by default on PHP streams (32). php-pm should probably set a specific (and configurable) parameter for that...After increasing...
Hi @fitzel , you could periodically send a signal to the master process in order to gracefully reload the slaves, I guess that would work?
Hi @g4z I believe you could use the `PHPRC` environment variable as documented in the PHP docs to point to a folder where you have your custom php.ini https://www.php.net/manual/en/configuration.file.php And...
You're right, as the workers are started as independent processes from the main one, the PHPRC directive is probably not propagated, we should investigate that. As a workaround, the worker...