Project

General

Profile

Question about the Message Archive Plugin

Dathan Pattishall
Added about 4 years ago

Why does the plugin hand off the message that is wants to save to a Component?

Couldn't the plugin process the packet and save it to the DB instead of sending it to another layer for processing?

Is handing the packet to a component done for performance sake? Like having specific compute resources on a separate server handle the save?

If so how would one configure tigase server and this plugin for another server to handle this action?


Replies (1)

Avatar?id=6023&size=32x32

Added by Artur Hefczyc TigaseTeam about 4 years ago

Dathan Pattishall wrote:

Why does the plugin hand off the message that is wants to save to a Component?

To offload heavy or resource consuming task to a separate component. By design Tigase component can be deployed as an external component on a separate machine or it can deployed as multiple, external components to further distribute load.

For Message Archive, the whole processing is DB bound which is heavy I/O, which usually means slow processing. We do not want to do this inside the main Tigase processing component.

Couldn't the plugin process the packet and save it to the DB instead of sending it to another layer for processing?

Yes, plugin can do this as well. However, for plugin you have very limited ways to offload or distribute load of heavy or slow processing which may impact the main service.

Is handing the packet to a component done for performance sake? Like having specific compute resources on a separate server handle the save?

Yes.

If so how would one configure tigase server and this plugin for another server to handle this action?

Check the admin guide: http://docs.tigase.org on how to deploy Tigase component as an external component or as a pool of external components. There is an example with MUC and PubSub components.

    (1-1/1)