[plt-scheme] just starting, comming from j2ee

From: Raymond Racine (rracine at adelphia.net)
Date: Mon Nov 8 19:14:46 EST 2004

On Mon, 2004-11-08 at 08:25, Noel Welsh wrote:

>   - have smart load-balancers that return requests to the
>     originating server
> ... To do the
> latter requires investing in some expensive-but-proven
> hardware from Foundry or Alteon.
It is common for a number of open source Java projects (and maybe
others) that sit behind an Apache server to append a node identifier to
the session id.  The Apache plugin loads the available app server node
ids from an XML file on startup.  An incoming request that makes it to
the plugin is examined to extract the node id that is appended to the
session id.  

The http plugin then delegates the request to the appropriate app server
(in this case the scheme app server).  Basically, this "guarantees"
affinity.  It is a very simple yet nice solution.  You can horizontally
scale the http servers behind a round robin'ing linux box as well as
horizontally scaling the Scheme App servers as well.

Failover and stuff are also handled by the plugin (if the affinity box
fails to answer in x seconds then send the request to another server). 
Seamless failover does require some kind of state sharing.  

This would basically involve pulling the code from one of the open
source Java plugins and inserting it into whatever plugin the MzScheme
App server is using to sit behind Apache.


Posted on the users mailing list.