Hi,

On Sep 14, 2005, at 4:09 PM, Gonzalo Barrio wrote:

> James can you explain a little of how it works the XCP componente
> extension so we can extend this to other servers implementations, like
> jabberd1, jabberd2 or jive also.

we use XCP at Sapo, and it was a request from us to have it in there.

Unfortunately, the load-balancing component that XCP 4.2 has does not 
support MSN or any other external gateway like ICQ or AIM.

The work of the component that cluster several instances of a transport 
that needs to keep sessions is very simple, actually:
1. configure an external component with the address you want 
my_large_component.im.sapo.pt;
2. connect your cluster component with that address;
3. connect several instances of your large_component with names like 
large1.im.sapo.pt, large2.im.sapo.pt, etc.
4. configure those names in the cluster component.

For each message that the cluster component gets, he retrieves the from 
attribute, strips the resource (optional, but usually a good idea), 
hashes the bare jid modulus the number of components that you have 
configured.

Then you wrap a <route to="largeN.im.sapo.pt">original packet</route> 
and send it back to the server.

The problem with the XCP is that is would balance based on the 'to' 
attribute and not the from, and that makes it suitable to text 
conferencing components but not to transports/gateways.

THe XCP code in pyMSNt also included a internal presence protocol that 
XCP uses to signal availability between external components. It's not 
terribly useful apart from that.

The other thing that this changes is the need to use a different name 
for the initial handshake protocol. If your component is 
large.im.sapo.pt, all the instances running should respond and send 
stanzas as large.im.sapo.pt, but when they connect to the server, they 
must use a different name, like large1.im.sapo.pt.

That's what this is all about.

The fact that the solution from XCP does not work for external 
components like pyMSNt is unfortunate.

I hope to have good news in the following days about this :).

Best regards,
--
HIId: Pedro Melo
SMTP: [EMAIL PROTECTED]
XMPP: [EMAIL PROTECTED]

Reply via email to