8

If I understand Unicorn right (and in particular from their philosophy doc) it seems like Unicorn was really designed to operate behind a reverse proxy like nginx.

My question is: can I drop nginx from my HTTP stack, considering we have an ELB at the top acting as the reverse proxy?

I didn't find any issues on initial tests, but just wondering if anyone out there has experience on this front already.

Wesley
  • 32,320
  • 9
  • 80
  • 116
pedro
  • 181
  • 2

1 Answers1

4

According to the Unicorn philosophy doc, the most important requirement is that the reverse proxy buffers requests and responses so that Unicorn isn't held up by slow clients. I can't find any definitive information, but this forum post and the following part of the ELB documentation imply that ELB does do some buffering in HTTP/HTTPS mode (but not in TCP/SSL mode).

When you use HTTP (layer 7) for both front-end and back-end connections, your load balancer parses the headers in the request and terminates the connection before re-sending the request to the registered instance(s).

mgorven
  • 30,036
  • 7
  • 76
  • 121