As it works right now, I have one Webware instance that handles all
session information, lets call it WW1.  I then have three different
applications running under three other Webware instances, lets call them
WW2, WW3 and WW4.  When a user accesses one of the applications for the
first time a session is created for them, through Pyro, on WW1.  As they
move from one application to the other their session information follows
them.  Basically it acts as a single sign-on solution.

The main limitation with this setup is that if WW1 goes offline for some
reason all of the applications go with it.  I'm still looking at ways to
better distribute the session storage.  One idea I have is for each
Webware instance to store session information, but when they do they
become the "owner" of that session.  For example, a user accesses an
application on WW2, at which point a session is created for them on
WW2.  The user then accesses WW3 and through some mechanism WW3 knows
that WW2 "owns" the user's session and requests it from WW2.

Basically what I've done, and would like to hand over to the community,
is the integration of Webware and Pyro.  How exactly that integration is
used (for session distribution, cross-instance communication, etc.) is
pretty much up to the community.

As I said before, the current implementation is pretty rough and it's
not something that could be immediately dropped into the Webware CVS. 
What I would like to do is extract the changes I've made to the Webware
source and put it somewhere public, like the Webware sandbox, and let
anyone who's interested play around with.  Then we could start a
discussion about the best way to bring it into the main Webware source
tree, or whether that should happen at all.

As a final note, while doing the integration I went out of my way to
only make changes to Webware so that I would only have to maintain
changes to one code base.  Unfortunately this did lead to some ugly
hacks.  The most annoying thing to deal with was the fact the Pyro is
designed to run under it's own daemon.  So to get it working under the 
Webware AppServer I had to trick Pyro into thinking that it was using
it's own daemon without actually having it open a socket. 


- Aaron



On Fri, 2005-03-11 at 12:32, Olivier FAVRE-SIMON wrote:
> That's great news.
> 
> I've seen this topic of multiple webware servers with a common 
> sessionstore quite a few times, which is important for 
> robustness/reliability.
> 
> Do you use session affinity (ie. if you started on server n°X you stay 
> on server n°X for the the whole duration of the session) or is it 
> already fully distributed amongst all available servers in a pool ?
> 
> 
> Pyro seems good to me. I've no experience of CORBA or Java RMI, but I'v 
> been using many times .NET Remoting for inter-WindowsServer2003 object 
> remoting, and when I looked for the replacement tool in python I also 
> choosed PyRO but I lacked time to actually do the job (and the remoting 
> servers were running fine already).
> 
> 
> Aaron Switzer wrote:
> 
> >I just wanted to mention, since it's been brought up, that I have taken
> >the time integrate Pyro (pyro.sourceforge.net) into Webware for the
> >purpose of spaning Webware across multiple machines.  I have a rough
> >version already in production use, where I have three inter-linked
> >applications running under seperate Webware instances but sharing the
> >Session store through Pyro.  The applications are also able to expose
> >APIs in the form of Pyro Servlets (as opposed to HTTP Servlets) and to
> >trade arbitrary objects (Pyro supports the transfer of code for an
> >unknown object from server to client).
> >
> >I've been planning to clean-up the code and submit it to the community
> >for a while, but have been holding off for a couple of reasons.  I have
> >just finish a major 4 month build out so I believe that I will have time
> >this month to extract the code from the more application specific
> >stuff.  I just don't want to get in the way of a new release which is
> >the most important thing for Webware right now IMHO.
> >
> >If there is a lot of interest in this, I may even make the time next
> >week.
> >
> >- Aaron



-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_ide95&alloc_id396&op=click
_______________________________________________
Webware-discuss mailing list
Webware-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/webware-discuss

Reply via email to