Re: after_worker_exit on murder

2017-04-04 Thread Simon Eskildsen
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!

Re: [PATCH] check_client_connection: use tcp state on linux

2017-03-21 Thread Simon Eskildsen
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

Re: check_client_connection using getsockopt(2)

2017-03-21 Thread Simon Eskildsen
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(*

Re: [PATCH] check_client_connection: use tcp state on linux

2017-03-21 Thread Simon Eskildsen
> 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

Re: check_client_connection using getsockopt(2)

2017-03-21 Thread Simon Eskildsen
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_

[PATCH] check_client_connection: use tcp state on linux

2017-03-21 Thread Simon Eskildsen
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