Uses of Interface
org.jgroups.Lifecycle

Packages that use Lifecycle
Package
Description
 
Provides building blocks that are layered on top of channels.
 
Provides implementations of transport protocols which are responsible for sending and receiving messages to/from the network.
 
 
 
Support for managing protocol stacks.
Provides useful functionality which cannot be assigned to any particular other package.
  • Uses of Lifecycle in org.jgroups.admin

    Classes in org.jgroups.admin that implement Lifecycle
    Modifier and Type
    Class
    Description
    class 
    Class to manage JGroups-internal cluster wide requests and responses (https://redhat.atlassian.net/browse/JGRP-3043).
  • Uses of Lifecycle in org.jgroups.blocks

    Classes in org.jgroups.blocks that implement Lifecycle
    Modifier and Type
    Class
    Description
    protected class 
     
  • Uses of Lifecycle in org.jgroups.fork

    Classes in org.jgroups.fork that implement Lifecycle
    Modifier and Type
    Class
    Description
    class 
    Acts as bottom protocol of a fork-stack.
    class 
    Protocol stack which maintains the mapping between fork-channel IDs and ForkChannels
  • Uses of Lifecycle in org.jgroups.protocols

    Classes in org.jgroups.protocols that implement Lifecycle
    Modifier and Type
    Class
    Description
    class 
    Encrypts and decrypts communication in JGroups by using a secret key distributed to all cluster members by the key server (coordinator) using asymmetric (public/private key) encryption.
    The secret key is identical for all cluster members and is used to encrypt messages when sending and decrypt them when receiving messages.
    class 
    The AUTH protocol adds a layer of authentication to JGroups.
    class 
    All messages up the stack have to go through a barrier (read lock, RL).
    class 
    Shared base class for TCP protocols
    class 
    Batches messages near the top of the stack.
    class 
    Broadcast PING.
    class 
    Protocol which clears a set of flags in the down or up direction for all messages
    class 
    Compresses the payload of a message.
    class 
    Protocol which is used by CounterService to provide a distributed atomic counter
    class 
    Implementation of daisy chaining.
    class 
    Delays incoming/outgoing messages by a random number of milliseconds (range between 0 and n where n is determined by the user) and nanoseconds (constant amount).
    class 
    Key exchange based on Diffie-Hellman-Merkle (https://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange).
    Diffie-Hellman is used between a member and a key server (the coordinator) to obtain a session key (only known to the key server and the joiner) which is used by the key server to encrypt the shared secret symmetric (group) key and by the requester to decrypt the group key it gets in the response of the key server.
    class 
    Discards up or down messages based on a percentage; e.g., setting property 'up' to 0.1 causes 10% of all up messages to be discarded.
    class 
    Discards a message whose sequence number (in the payload, as a Long) matches seqno 2 times, before passing it down.
    class 
    The Discovery protocol retrieves the initial membership (used by GMS and MERGE3) by sending discovery requests.
    class 
    Protocol which drops up or down messages according to user-defined filters
    class 
    Duplicates outgoing or incoming messages by copying them
    class 
    Super class of symmetric (SYM_ENCRYPT) and asymmetric (ASYM_ENCRYPT) encryption protocols.
    class 
    Example of a protocol layer.
    class 
    Base class for all failure detection protocols
    class 
    Failure detection based on simple heartbeat protocol.
    class 
    Failure detection based on simple heartbeat protocol.
    class 
    Failure detection based on simple heartbeat protocol.
    class 
    Failure detection protocol which detects the crash or hanging of entire hosts and suspects all cluster members on those hosts.
    class 
    Failure detection protocol based on sockets.
    class 
    Failure detection protocol based on TCP connections, successor to FD_SOCK.
    class 
    Simple discovery protocol which uses a file on shared storage such as an SMB share, NFS mount or S3.
    class 
    Simple flow control protocol based on a credit system.
    class 
    The FORK protocol; multiplexes messages to different forks in a stack (https://issues.redhat.com/browse/JGRP-1613).
    class 
    Fragmentation layer.
    class 
    Fragmentation layer.
    class 
    Fragmentation protocol which uses less memory to store fragments than FRAG2.
    When a message is fragmented, all fragments carry the size of the original message, their offset and length with respect to the original message and a fragment ID (to identify the fragment).
    When the first fragment is received, the full message is created and each fragment copies its data into the full message at its offset and length.
    class 
    Fragmentation layer.
    class 
    Base class for all fragmentation protocols.
    class 
    Prints the headers of all sent or received messages
    class 
    Simple protocol to inject an arbitrary view on one or more cluster nodes.
    class 
    Discovery protocol using a JDBC connection to a shared database.
    class 
    New version of JDBC_PING.
    class 
    Base class for protocols implementing key exchange: a secret key to be used for encryption is exchanged between 2 parties (usually the key server and a new cluster member) securely; ie.
    class 
    Discovery protocol for finding members in the local process only.
    class 
    Intercepts individual up messages and creates batches from them, passing the batches up.
    class 
    Protocol to discover subgroups; e.g., existing due to a network partition (that healed).
    class 
    Simple flow control protocol based on a credit system.
    class 
    Uses its own IP multicast socket to send and receive discovery requests/responses.
    class 
    Negative AcKnowledgement layer (NAKs).
    class 
    New multicast protocol based on fixed-size xmit windows and message ACKs
    Details: https://issues.redhat.com/browse/JGRP-2780
    class 
    Detects sends during processing of incoming messages and sets flag Message.TransientFlag.DONT_BLOCK to prevent blocking the incoming thread on a send.
    JIRA: https://issues.redhat.com/browse/JGRP-2772
    class 
    Persistent Discovery Cache.
    class 
    Protocol measuring latency between stacks.
    class 
    The PING protocol retrieves the initial membership by mcasting a discovery request (via the multicast capable transport) to all current cluster members
    class 
    Discovery protocol based on Rackspace Cloud Files storage solution
    class 
    Measures incoming and outgoing rates: messages/sec, bytes/sec.
    class 
    Protocol which sends at most max_bytes in time_period milliseconds.
    class 
    Rate limiter based credits (max_bytes).
    class 
    Deprecated, for removal: This API element is subject to removal in a future version.
    Functionality replaced by PerDestinationBundler, see https://redhat.atlassian.net/browse/JGRP-3027
    class 
    Base class for reliable multicast protocols
    class 
    Base class for reliable unicast protocols
    class 
    Reverses the next N messages that are received.
    class 
     
    class 
    Protocol which implements synchronous messages (https://issues.redhat.com/browse/JGRP-1389).
    class 
    Implementation of total order protocol using a sequencer.
    class 
    Implementation of total order protocol using a sequencer_uum.
    class 
    Serializes the entire message (including payload, headers, flags and destination and src) into the payload of another message that's then sent.
    class 
    Loopback transport shared by all channels within the same VM.
    class 
    Discovery protocol running over SHARED_LOOPBACK only.
    class 
    Reorders messages by buffering them and shuffling the result after TIMEOUT ms.
    class 
    Protocol which lists how many messages have been received by size: https://issues.redhat.com/browse/JGRP-2893
    Don't use this layer in a production stack since the costs are high; only use for debugging/diagnosis.
    class 
    Records number of messages sent/received based on size
    class 
    Protocol trying to print message payloads as strings
    class 
    Periodically fetches some attributes and writes them to a file (https://issues.redhat.com/browse/JGRP-2402)
    class 
    Key exchange based on SSL sockets.
    class 
    Provides various stats
    class 
    Protocol which provides STOMP (https://stomp.github.io/) support.
    class 
    Discovery protocol based on Openstack Swift (object storage).
    class 
    Encrypts and decrypts communication in JGroups by using a secret key shared by all cluster members.
    class 
    TCP based protocol.
    class 
    Protocol using TCP/IP to send and receive messages.
    class 
    The TCPGOSSIP protocol layer retrieves the initial membership (used by GMS when started by sending event FIND_INITIAL_MBRS down the stack).
    class 
    The TCPPING protocol defines a static cluster membership.
    class 
    Maintains averages of up- and down-threads
    class 
    Protocol measuring delivery times.
    class 
    Generic transport - specific implementations should extend this class.
    class 
    Base class for TP which captures fields and accessors.
    class 
     
    class 
    Replacement for UDP.
    class 
    IP multicast transport based on UDP.
    class 
    Simple flow control protocol based on a credit system.
    class 
    Intercepts Protocol.up(MessageBatch) and passes up each message of a message batch as a single message.
    class 
    Unbatches OOB batches when enabled and virtual threads are available.
    https://issues.redhat.com/browse/JGRP-2888
    class 
    Reliable unicast protocol using a combination of positive and negative acks.
    class 
    New unicast protocol based on fixed-size xmit windows and message ACKs
    Details: https://issues.redhat.com/browse/JGRP-2843
    class 
    Catches SUSPECT events traveling up the stack.
    class 
    Double-checks that a suspected member is really dead.
    Details: https://issues.redhat.com/browse/JGRP-2558
    Design: https://github.com/belaban/JGroups/blob/master/doc/design/VERIFY_SUSPECT2.txt
    class 
    Maintains a version number and adds it to all outbound messages.
  • Uses of Lifecycle in org.jgroups.protocols.dns

    Classes in org.jgroups.protocols.dns that implement Lifecycle
    Modifier and Type
    Class
    Description
    class 
     
  • Uses of Lifecycle in org.jgroups.protocols.pbcast

    Classes in org.jgroups.protocols.pbcast that implement Lifecycle
    Modifier and Type
    Class
    Description
    class 
    Group membership protocol.
    class 
    Negative AcKnowledgement layer (NAKs).
    class 
    Computes the broadcast messages that are stable; i.e., have been delivered by all members.
    class 
    STATE streams the state (written to an OutputStream) to the state requester in chunks (defined by chunk_size).
    class 
    STATE_SOCK has the state provider create a server socket to which the state requester connects and from which the latter reads the state.
    class 
    STATE_TRANSFER protocol based on byte array transfer.
    class 
    Base class for state transfer protocols which use streaming (or chunking) to transfer state between two members.
  • Uses of Lifecycle in org.jgroups.protocols.relay

    Classes in org.jgroups.protocols.relay that implement Lifecycle
    Modifier and Type
    Class
    Description
    class 
    Common superclass for RELAY2 and RELAY3
    class 
    Design: ./doc/design/RELAY2.txt and at https://github.com/belaban/JGroups/blob/master/doc/design/RELAY2.txt.
    class 
    Provides relaying of messages between autonomous sites.
    Design: ./doc/design/RELAY2.txt and at https://github.com/belaban/JGroups/blob/master/doc/design/RELAY2.txt.
    JIRA: https://issues.redhat.com/browse/JGRP-1433
  • Uses of Lifecycle in org.jgroups.stack

    Subinterfaces of Lifecycle in org.jgroups.stack
    Modifier and Type
    Interface
    Description
    interface 
    Policy which decides how to process a received message or message batch.
    Classes in org.jgroups.stack that implement Lifecycle
    Modifier and Type
    Class
    Description
    class 
    The Protocol class provides a set of common services for protocol layers.
    class 
    A ProtocolStack manages a number of protocols layered above each other.
  • Uses of Lifecycle in org.jgroups.util

    Classes in org.jgroups.util that implement Lifecycle
    Modifier and Type
    Class
    Description
    class 
    Used to execute asynchronous tasks, e.g.
    class 
    MessageProcessingPolicy which processes regular messages and message batches by assigning a max of 1 thread per message from the same sender.
    class 
    A dummy implementation of TP
    class 
    MessageProcessingPolicy which passes all messages and message batches up directly (on the same thread).
    class 
    MessageProcessingPolicy which passes regular messages and message batches up directly (on the same thread), but passes OOB messages to the thread pool.
    class 
    Default message processing policy.
    class 
    Thread pool based on ThreadPoolExecutor
    class 
    Component to configure TLS in protocols (TCP and TUNNEL).
    class 
    Same as MaxOneThreadPerSender, but for OOB message batches, every message of the batch is passed to the thread pool separately (https://issues.redhat.com/browse/JGRP-2800).