powered by Jive Software

Gateway plugin in a different server to reduce load on main server?


To reduce the load of the main server, we use a Connection Manager (so the server can get rid of the responsibility of handling incoming sockets, etc, etc).

BUT, outgoing-side, we have that the gateway plugin is making one outgoing connection for each of the transport sessions.

My question is, would it be possible to use the gateway plugin in a different server, so the main server just opens some s2s connections and reduces its load?

My main server would serve the domain “mydomain.com”, another server (with gateway installed) would server “msn.mydomain.com” and these two servers would communicate using s2s.

Is this possible? Would it be transparent to users (would it work the same as now)?

If that’s not possible, are there any alternatives? Running an external transport (e.g. PyMSNt )? (But then i would loose the perfect integration Daniel tells us about in his video in http://www.igniterealtime.org/community/blogs/pocasts/2007/09/11/external-vs-int ernal-gateways)

Thanks a lot for your attention!!

No, I’m afraid the gateway plugin does not support this. It wouldn’t have direct access to the user’s roster at that point so it would not be capable of functioning cleanly. However, the IM Gateway plugin -is- clustering-aware, so if you were to take advantage of Openfire’s clustering capabilities, you could distribute the load of the gateway connections, s2s connections, and everything, across a number of nodes. Gain some fault tolerance in the process too! =) Of course, clustering comes with enterprise, and therefore is not free.

The external python based transports would allow you to run them on another server, but you would lose the tight integration with the user’s roster. =/