You're right, I misread the code—I thought the wait(2) would happen in
the kill worker call, but the reap worker call takes care of that.
Thanks for clearing that up Jeremy!
Looks like Puma encountered some issues with some Linux distro's
kernels not supporting this. That's crazy..
https://github.com/puma/puma/issues/1241
On Wed, Feb 22, 2017 at 8:42 PM, Eric Wong <e...@80x24.org> wrote:
> Simon Eskildsen <simon.eskild...@shopify.com> wrote:
>
> Thanks for the writeup!
>
> Another sidenote: It seems nginx <-> unicorn is a bit odd
> for deployment in a containerized environment(*
> I prefer we use a hash or case statement. Both allow more
> optimization in the YARV VM of CRuby (opt_aref and
> opt_case_dispatch in insns.def). case _might_ be a little
> faster if there's no constant lookup overhead, but
> a microbench or dumping the bytecode will be necessary
> to be sure
On Wed, Feb 22, 2017 at 1:33 PM, Eric Wong <e...@80x24.org> wrote:
> Simon Eskildsen <simon.eskild...@shopify.com> wrote:
>
> great to know it's still working after all these years :>
>
>> This confirms Eric's comment that the existing
>> `check_client_
The implementation of the check_client_connection causing an early write is
ineffective when not performed on loopback. In my testing, when on non-loopback,
such as another host, we only see a 10-20% rejection rate with TCP_NODELAY of
clients that are closed. This means 90-80% of responses in this