Skip to content
Hellblazer edited this page Apr 24, 2013 · 7 revisions

This page describes how to configure the gossip instance using YAML.

Configuration

The configuration elements of the gossip instance consist of:

  • The gossip parameters
  • The list of seeds
  • The failure detection factory

Gossip Parameters

All of the parameters controlling the gossip are optional and default to sensible defaults.

  • cleanupCycles - the number of gossip cycles to wait until cleaning up a member marked as failed.
  • commThreads: - the number of dispatch threads used to notify listeners of gossip events
  • endpoint - the host and port (host:port) the gossip instance will listen on. Defaults to "*:0", which means it will bind to all interfaces and randomly choose a port to bind to.
  • gossipInterval - the time between gossip cycles
  • gossipUnit - the time unit of the gossip cycle
  • heartbeatCycle - the number of gossip cycles before a heartbeat is sent
  • hmac - the JCE algorithm name for the hmac used to authenticate and validate the gossip messages
  • hmacKey - the key used for the hmac algorithm
  • quarantineDelay - the number of milliseconds to delay before quarantining a failed member
  • receiveBufferMultiplier - the number of buffers to allocate for receiving messages
  • sendBufferMultiplier - the number of buffers to allocate for sending messages
  • unreachableDelay - the number of milliseconds to delay before declaring a member unreachable

Note that you don't have to specify the host and port that the gossip instance binds to. The nature of gossip is that it is a discovery mechanism. Thus, you only need a few instances that have well known addresses. Seed members - i.e. the members used to establish the gossip network - will require explicit port configuration, but because you can bind to all addresses on the machine (Use "*" or simply leave the host field empty to bind to all addresses).

Clone this wiki locally