[Opensim-dev] moving away from grid vs. standalone

Stefan Andersson stefan at tribalmedia.se
Wed Apr 29 18:04:09 UTC 2009


Fair enough. Again, I'm all in favour for actual coding and experimentation over upfront architecture debates.

Best regards,
Stefan Andersson




> Date: Wed, 29 Apr 2009 09:48:12 -0700
> From: diva at metaverseink.com
> To: stefan at tribalmedia.se
> CC: opensim-dev at lists.berlios.de
> Subject: Re: [Opensim-dev] moving away from grid vs. standalone
> 
> Stefan Andersson wrote:
> > How about
> >  
> > ---
> > [RegionResourceServices]
> > ;GridService = OpenSim.Region.Communications.Hypergrid.dll, HGGridServices
> > ;GridService = OpenSim.Region.Communications.Local.dll, LocalBackEndServices
> >  
> > GridService = OpenSim.Region.Communications.OGS1.dll, OGS1GridServices
> >  
> > [GridService]
> > grid_server_url = "http://192.168.1.101:9000"
> > grid_send_key = "null"
> > grid_recv_key = "null"
> 
> The problem with specifying dlls *in this particular case* is that these 
> things aren't entirely orthogonal/different. The Hypergrid dlls are a 
> mashup of the other two. Therefore from a source code perspective it 
> makes things a heck of a lot more complicated than they need to be if we 
> simply merge things and use conditionals on configuration variables. For 
> example, hyperlinks (part of grid services) is a really simple extension 
> to LocalGrid services.
> 
> The issue of local vs remote services isn't entirely orthogonal either. 
> Some parts of OGS1 use Local services -- the well know pattern of 
> trying things locally first and if that doesn't work, proceed for a 
> remote service call (e.g. OGS1 grid services does that).
> 
> I see why you want this, in abstract. If another service comes along, it 
> can simply be added as a component. Or if someone writes, say, a 
> completely different inventory service, its interface can be added as dll.
> 
> But in this particular case, for the code we already have, I think that 
> having Local.dll, OGS1.dll and Hypergrid.dll is not working well, even 
> if the configuration process is the one you suggest. The code is mess; 
> things are _way_ more complicated than they need to be.
> 
> So, maybe, what we can do is merging these two ideas. We'll have only 
> one dll (OpenSim.Region.ResourceServices.dll), but we'll specify things 
> in OpenSim.ini the way that you suggest, so that if anyone comes along 
> and wants to plug in a different inventory service, he can just specify 
> the  other dll and an entry class name for it.
> 
> What do you think?
> 
> 
> > [Security]
> >  
> > SessionAuthentication = {True|False}
> > KeyAuthentication = {True|False}
> > 
> > ---
> >  
> > The constructor is being fed a config source, so the service can pick 
> > out whatever it needs.
> >  
> > All the shipped grid services could move into one assembly, as we're 
> > explicitly specifying the implementing calss.
> >  
> > I believe this approach would get us improved flexibility.
> > 
> > /Stefan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20090429/d3e46ea1/attachment-0001.html>


More information about the Opensim-dev mailing list