Dnia 2012-09-19, śro o godzinie 01:19 +0200, Alexandre Jousset pisze:
> > You need bare-jid level binds only when there is more than one component
> > handling the domain. If there is only one, you can do domain based
> > routing without the need for user@domain binding.
>  >
> > This approach does not use more memory than current solution.
> 
>       I was thinking about multiple SMs handling one domain. Maybe it would 
> be a good thing to say this (only 1 SM per domain to use less memory) in the 
> install / config guide after the changes.

That would effectively disable clustering support, doesn't it?


>       Now I have a question about the routers interconnections. In my proof 
> of concept, each router had IPs/ports of each other router (including itself, 
> just to copy/paste this part of the config file), and each one connected to 
> each other in a client-server way, trying to reconnect roughly each X seconds 
> (with a customizable X) in case of error / lost connection.

I don't like this approach.

Each router should have a list of router it needs to connect.
This does not need to be a list of all routers present in the mesh.

When each router binds all names known to it at the connect, routing is
simple - you just route to the router binding the name. You don't care
whether it forwards the packet to some other router/component using its
own routing table. Multi-hops are possible, but we don't care really, do
we?


>       How do you see these interconnections? How to configure them? What if 
> (and how) one add or remove a router/host from the cluster?

In my other XMPP server implementation serves has a telnet command port.
You just connect to the port and issue "connection connect address port"
command. :-)

But in our case a list of connections in the router.xml is enough I
think. Only the new connecting router may have a connection listed. The
connected router does not have to know the connecting router. Connecting
server just need to know the secret needed to connect to and having
proper right bind.
Especially the first router in the mesh can have no predefined
connections configured at all.


-- 
Tomasz Sterna
Instant Messaging Consultant : Open Source Developer
http://tomasz.sterna.tv/  http://www.xiaoka.com/portfolio



Reply via email to