[Mongrel-development] Small updates and release plan

Zed A. Shaw
Tue, 11 Dec 2007 02:20:59 -0000

On Mon, 10 Dec 2007 23:22:29 -0200 (BRST)
Filipe <filipe at icewall.org> wrote:

<snip>
> Anyway, the return code is defined in [1]. you know, it''s not
because
> your code works right(TM) that all code in the world will work ok
> too... and implementing this even clients will display the correct
> HTML code.
>
> 1. http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1

  10.4.1 400 Bad Request

  The request could not be understood by the server due to malformed
  syntax. The _client_ SHOULD NOT repeat the request without
  modifications.

Again, this is for "clients" not proxy servers.  The purpose of a
proxy
server is to ensure that a request from a client is serviced by 1 of N
backends.  If a backend closes the connection, that means it''s
malfunctioning in some way, so the proxy server should try another
one.  Clients however should stop talking to a server that does a 400.

Another way to put this is that the HTTP standard doesn''t have anything
that applies to the situation of a load balancing proxy server.  What
you''ll be doing is wasting valuable mongrel time to keep a server happy
that really should understand a closed connection as "try my
neighbor".

--
Zed A. Shaw
- Hate: http://savingtheinternetwithhate.com/
- Good: http://www.zedshaw.com/
- Evil: http://yearofevil.com/