directory-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Yiannis Mavroukakis <>
Subject Re: [ApacheDS] Poor man's cluster interceptor
Date Thu, 19 Feb 2009 18:55:31 GMT
Hello all :-)

This is off the back of my previous questions about clustering..

I've managed to setup a poor man's cluster on our Jboss servers cluster 
using message queues. I can get messages passed to the JBoss instance but
I'm having a few issues..
I initially tried to send the entire AddOperationContext obect but I got 
defeated when it refused to serialize :)
I then though I'd break it down to its constituent parts, stuff them in 
a map and send them off..that worked partially and I am unsure as to 
which structures
I can use in order to be able to recreate the entry on the participating 
ldap clusters

This is what I do at the moment

 Map<String , byte[ ]> attributes = new HashMap( );
ServerEntry entry = addContext.getEntry( );
        if( ( entry.get( SchemaConstants.USER_PASSWORD_AT ) != null ) )
            for( AttributeType attr : entry.getAttributeTypes( ) )
                EntryAttribute entryAttr = entry.get( attr );
                if ( entryAttr.get( ).isBinary( ) )
                    attributes.put( attr.getName( ) , 
entryAttr.getBytes( ) );
                    attributes.put( attr.getName( ) , 
StringTools.getBytesUtf8( entryAttr.getString( ) ) );

[send to cluster after this]

Am I missing something? Do I need to add more/less to the Map?

Thank you!
Yiannis Mavroukakis wrote:
> That should be ok for our purposes for the time being, as the JBoss 
> servers will only query their localhost and not any other
> server in the cluster (this is done only for redundancy).
> Y.
> Emmanuel Lecharny wrote:
>>> Hehe not *entirely* manually, I meant that I have to replicate
>>> add/delete/modify through the DS instances in the cluster via
>>> message queues...
>> This is exactly what the replication does. But replication is not only
>> about sending changes to other servers, it's also to manage conflict
>> if you are managing multi-master replication. this is where it's start
>> to be complex ...

View raw message