On Jul 25, 5:55 pm, Ryan Tomayko <[email protected]> wrote: > > As I understand it, each "dyno" handles one connection at a time. So, > > N dynos means N connections at a time. > > Kind of. The request path through heroku looks something like this: > > Client -> Nginx -> Varnish -> Balancer -> Dyno
Right. I should've said "request" instead of "connection". > A dyno can process a single request at a time (1 dyno = 1 single > threaded Thin process). Multiple requests from a single client -- even > over a single keep-alive connection -- may be routed to different > dynos. Requests backlog at the balancer and are not sent to a dyno > until one is free. Isn't the point of Thin to scale with many thousands of concurrent connections (via EventMachine via epoll on Debian)? Are you saying that Thin is configured to only allow *one* connection at a time? > That's right. Keep-alive can still reduce the number of connections > each client needs to establish but long lived / streaming responses > aren't possible with Heroku's architecture. OK. Thanks for the verification. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Heroku" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/heroku?hl=en -~----------~----~----~----~------~----~------~--~---
