Copyright (c) 2002 Nexedi SARL and Contributors. All Rights Reserved. Jean-Paul Smets <jp@nexedi.com> WARNING: This program as such is intended to be used by professional programmers who take the whole responsibility of assessing all potential consequences resulting from its eventual inadequacies and bugs This program as such is not intended to be used by end users. End users who are looking for a ready-to-use solution with commercial guarantees and support are strongly advised to contract a Free Software Service Company This program is Free Software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

This tab defines the Load Balancing of Activities. To provide high performance, the activities are distributed over several ZEO clients, called nodes, so that they can be processed in parallel. Nodes can either run on different machines or on one machine with different Port Numbers. The format to address a node in this configuration is therefore `IP-Address`:`Port-Number`.

The interval of distribution and activation of the activities is per default 5 seconds. This can be changed by altering the value of interval in the section time-server in the Zope Configuration File zope.conf.

Warning: No node has been found yet.

This can be the sign of a missconfigured zope. Please make sure you have enabled timerserver in your zope.conf:

    %import timerserver
    <timer-server>
      interval 5
    </timer-server>

CMFActivity will not work until at least one node is known.

If it is already configured properly, then chances are you accessed this page before timeserver had the chance to trigger, or you just deleted the last known nodes.

This node

Current node is

Warning: Current node is not known to distribution system.

The current node is not registered as an available node on current instance. This can be normal if this node is part of a cluster, but it can also happen if its hostname and/or IP address changed. I the latter case, you must reconfigure this page accordingly, and can safely delete the old IP address if it's still listed on this page.

Distributing Node

The Distributing node is responsible for the Load Distribution. Only one node can be Distributing node at any given time. It is also possible to interrupt activity distribution by selecting the (disabled) value. Activity nodes will receive no more activity when Distributing node is disabled.

Warning: Distributing node is a processing node.

For better performances it is recommended to not process activities on the distributing node. Otherwise, it may distribute activities too slowly and starve the other processing nodes.

Existing Nodes

Idle nodes |  | Processing nodes

Every node sharing the same ZODB will register itself to the idle node list - except the first one which will be automatically declared both Processing node and Distributing node. Registered nodes can then be made Processing nodes or Idle nodes.

Important note: Nodes can register themselves, but can not unregister themselves (for example, a node which IP has changed will be present twice in the list). It is up to the user to manually prune obsolete nodes. If non-existent nodes are present in the Processing node list, activities will get balanced to those nodes and never be executed.

Important note:Adding or removing processing nodes while activities are processed causes undefined behaviour.

Subscribe/Unsubscribe from Timer Service
Status: Subscribed Not Subscribed