[email@example.com: Re: [firstname.lastname@example.org: HA Desktop Server]]
Mon, 10 Feb 2003 16:49:07 +0900
I passed your question onto a friend of mine who knows
one or two things about X. Here is what he had to say.
----- Forwarded message from Carsten Haitzler <email@example.com> -----
Date: Mon, 10 Feb 2003 18:34:49 +1100
From: Carsten Haitzler (The Rasterman) <firstname.lastname@example.org>
To: Horms <email@example.com>
Subject: Re: [firstname.lastname@example.org: HA Desktop Server]
X-Cluestick: Get jiggy with it!
On Mon, 10 Feb 2003 15:57:03 +0900 Horms <email@example.com> babbled:
> Though you might like this one.
you can pass this on:
X (as a protcol) by its nature has reverse terminology. that means what you know
as a server is really a client and vice-versa. It makes sense if you think of it
as graphics operations being server operations... but that's for another
Simply put HA X is not possible unless you can do parallel execution of apps and
keep lock-step state between 2 machines of 2 processes and all their fd's
connections, files etc.
the reason is that in the model you describe applications execute on a server
machine (lets for now call this app: xterm). xterm runs on the "application
server". if app server goes down.. guess what. app just died. all its state in
ram is gone. u would need a copy of this elsewhere (and execution state, stack,
etc. etc.) to pick up where it left off (then in theory you could do a
connection takeover to the xserver (which is actually running on your pc), kind
of in reverse to the normal way). BUT things don't work this way, so you can't.
The best you can do is minimise the outage.. that is, have multiple app servers.
Then if 1 app server goes down only some people are affected. now take this to
extend as far as u can.. 1 app server per person so if an app server goes down
only 1 person is affected... what do we have now? workstations! pc's! :) back to
doing things the way we already do it.
now theres the other problem. the x connection retains state... a LOT of state.
you ant "just pick it up" you'd have to rebuild state... also the xsever on the
client pc wouldn't like this even if you did..
--------------- Codito, ergo sum - "I code, therefore I am" --------------------
The Rasterman (Carsten Haitzler) firstname.lastname@example.org
Mobile Phone: +61 (0)413 451 899 Home Phone: 02 9698 8615