Re: [hybi] #1: HTTP Compliance

Greg Wilkins <gregw@webtide.com> Thu, 22 July 2010 06:57 UTC

Return-Path: <gregw@webtide.com>
X-Original-To: hybi@core3.amsl.com
Delivered-To: hybi@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 0FC403A6834 for <hybi@core3.amsl.com>; Wed, 21 Jul 2010 23:57:49 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.823
X-Spam-Level:
X-Spam-Status: No, score=-1.823 tagged_above=-999 required=5 tests=[AWL=0.153, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7NRXQRND9jYM for <hybi@core3.amsl.com>; Wed, 21 Jul 2010 23:57:48 -0700 (PDT)
Received: from mail-fx0-f44.google.com (mail-fx0-f44.google.com [209.85.161.44]) by core3.amsl.com (Postfix) with ESMTP id DBB3A3A67B4 for <hybi@ietf.org>; Wed, 21 Jul 2010 23:57:47 -0700 (PDT)
Received: by fxm1 with SMTP id 1so4470766fxm.31 for <hybi@ietf.org>; Wed, 21 Jul 2010 23:58:04 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.103.67 with SMTP id j3mr1291823fao.99.1279781884011; Wed, 21 Jul 2010 23:58:04 -0700 (PDT)
Received: by 10.223.112.129 with HTTP; Wed, 21 Jul 2010 23:58:03 -0700 (PDT)
In-Reply-To: <Pine.LNX.4.64.1007220500080.7242@ps20323.dreamhostps.com>
References: <068.d07026741c6694cd80652d2a7d34f236@tools.ietf.org> <4BF106AD.6020506@webtide.com> <A42E692A-7210-4FF1-AB4F-CFB3E8C38756@apple.com> <AANLkTinorjXFsTH=TvhhF-+e3Eyen8EA2qL7wFCmqpYe@mail.gmail.com> <Pine.LNX.4.64.1007212247590.7242@ps20323.dreamhostps.com> <20100721230350.GF6475@1wt.eu> <Pine.LNX.4.64.1007220500080.7242@ps20323.dreamhostps.com>
Date: Thu, 22 Jul 2010 16:58:03 +1000
Message-ID: <AANLkTinlP-CaVzCAe031e6nkDoT3eq5-nx00vk9PFrU_@mail.gmail.com>
From: Greg Wilkins <gregw@webtide.com>
To: Ian Hickson <ian@hixie.ch>
Content-Type: multipart/alternative; boundary="001636eef00b9625e2048bf470ec"
Cc: "hybi@ietf.org" <hybi@ietf.org>
Subject: Re: [hybi] #1: HTTP Compliance
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Server-Initiated HTTP <hybi.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/hybi>, <mailto:hybi-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/hybi>
List-Post: <mailto:hybi@ietf.org>
List-Help: <mailto:hybi-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/hybi>, <mailto:hybi-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 22 Jul 2010 06:57:49 -0000

On 22 July 2010 16:32, Ian Hickson <ian@hixie.ch> wrote:

> > I disagree completely -- there is going to be a web server involved in
> > delivering the web application, and I think the more usual scenario is
> > that web server also implements the WebSocket server.  Why would someone
> > prefer to deploy two servers rather than one, except in the case where
> > their web server doesn't yet support WebSocket?  If this protocol is
> > successful, over time that will drop to 0.
>
> I see no advantage in the common case to using the same software for both.
> It's far easier to just host them separately.
>

The evidence in this WG is that many server side developers see great
benefit in using a single server for both HTTP and Websocket.

The reason is that a websocket based application is a WEB application that
will be combination of HTTP served resources (markup, images, css,
javascript) interacting with websocket received/served resources
(messages).  Many of these applications will have fallback transports that
will use HTTP when websocket is not available.

It is highly desirable to avoid multiple instances of business logic for a
single client, thus it is highly desirable to have a single application
context handle both HTTP and websocket transactions for the same client.
Having multiple servers is just a recipe for complex applications suffering
from race conditions or needing the extra expense of putting more operations
through a transactional mechanism (DB, JMX etc.).



> Why don't people use the same software for HTTP and DNS? Or IMAP and SMTP?
> Or IRC and FTP? Why would they act differently for HTTP and WebSocket?


Applications that combine mail and web applications often do run protocols
like SMTP in the same process as the web server.   Ditto for IRC, XMPP etc.

cheers