Uses of Annotation Interface
org.jgroups.annotations.MBean
Packages that use MBean
Package
Description
Provides top-level public JGroups classes such as Channel, Message, etc.
Provides demonstrations of JGroups functionality.
Provides implementations of transport protocols which are
responsible for sending and receiving messages to/from the network.
Provides useful functionality which cannot be assigned to any particular other package.
-
Uses of MBean in org.jgroups
Classes in org.jgroups with annotations of type MBeanModifier and TypeClassDescriptionclassA channel represents a group communication endpoint (like a socket). -
Uses of MBean in org.jgroups.blocks.cs
Classes in org.jgroups.blocks.cs with annotations of type MBeanModifier and TypeClassDescriptionclassAbstract class for a server handling sending, receiving and connection management. -
Uses of MBean in org.jgroups.demos
Classes in org.jgroups.demos with annotations of type MBeanModifier and TypeClassDescriptionclassShows how annotations can be used to expose attributes and operations -
Uses of MBean in org.jgroups.protocols
Classes in org.jgroups.protocols with annotations of type MBeanModifier and TypeClassDescriptionclassEncrypts 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.classThe AUTH protocol adds a layer of authentication to JGroups.classAll messages up the stack have to go through a barrier (read lock, RL).classBatches messages near the top of the stack.classProtocol which clears a set of flags in the down or up direction for all messagesclassCompresses the payload of a message.classProtocol which is used byCounterServiceto provide a distributed atomic counterclassImplementation of daisy chaining.classDelays 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).classKey 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.classDiscards 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.classThe Discovery protocol retrieves the initial membership (used by GMS and MERGE3) by sending discovery requests.classProtocol which drops up or down messages according to user-defined filtersclassExample of a protocol layer.classBase class for all failure detection protocolsclassFailure detection protocol which detects the crash or hanging of entire hosts and suspects all cluster members on those hosts.classFailure detection protocol based on sockets.classFailure detection protocol based on TCP connections, successor toFD_SOCK.classSimple flow control protocol based on a credit system.classThe FORK protocol; multiplexes messages to different forks in a stack (https://issues.redhat.com/browse/JGRP-1613).classBase class for all fragmentation protocols.classPrints the headers of all sent or received messagesclassSimple protocol to inject an arbitrary view on one or more cluster nodes.classIntercepts individual up messages and creates batches from them, passing the batches up.classProtocol to discover subgroups; e.g., existing due to a network partition (that healed).classSimple flow control protocol based on a credit system.classDetects sends during processing of incoming messages and sets flagMessage.TransientFlag.DONT_BLOCKto prevent blocking the incoming thread on a send.
JIRA: https://issues.redhat.com/browse/JGRP-2772classPersistent Discovery Cache.classProtocol measuring latency between stacks.classMeasures incoming and outgoing rates: messages/sec, bytes/sec.classProtocol which sends at most max_bytes in time_period milliseconds.classDeprecated, for removal: This API element is subject to removal in a future version.Functionality replaced by PerDestinationBundler, see https://redhat.atlassian.net/browse/JGRP-3027classBase class for reliable multicast protocolsclassBase class for reliable unicast protocolsclassReverses the next N messages that are received.classclassProtocol which implements synchronous messages (https://issues.redhat.com/browse/JGRP-1389).classImplementation of total order protocol using a sequencer.classImplementation of total order protocol using a sequencer_uum.classSerializes the entire message (including payload, headers, flags and destination and src) into the payload of another message that's then sent.classRecords number of messages sent/received based on sizeclassProtocol trying to print message payloads as stringsclassPeriodically fetches some attributes and writes them to a file (https://issues.redhat.com/browse/JGRP-2402)classKey exchange based on SSL sockets.classProvides various statsclassProtocol which provides STOMP (https://stomp.github.io/) support.classEncrypts and decrypts communication in JGroups by using a secret key shared by all cluster members.classMaintains averages of up- and down-threadsclassProtocol measuring delivery times.classGeneric transport - specific implementations should extend this class.classSimple flow control protocol based on a credit system.classInterceptsProtocol.up(MessageBatch)and passes up each message of a message batch as a single message.classUnbatches OOB batches when enabled and virtual threads are available.
https://issues.redhat.com/browse/JGRP-2888classReliable unicast protocol using a combination of positive and negative acks.classCatches SUSPECT events traveling up the stack.classDouble-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 -
Uses of MBean in org.jgroups.protocols.pbcast
Classes in org.jgroups.protocols.pbcast with annotations of type MBeanModifier and TypeClassDescriptionclassGroup membership protocol.classNegative AcKnowledgement layer (NAKs).classComputes the broadcast messages that are stable; i.e., have been delivered by all members.classSTATE streams the state (written to an OutputStream) to the state requester in chunks (defined by chunk_size).classSTATE_SOCKhas the state provider create a server socket to which the state requester connects and from which the latter reads the state.classSTATE_TRANSFER protocol based on byte array transfer.classBase class for state transfer protocols which use streaming (or chunking) to transfer state between two members. -
Uses of MBean in org.jgroups.protocols.relay
Classes in org.jgroups.protocols.relay with annotations of type MBeanModifier and TypeClassDescriptionclassDesign: ./doc/design/RELAY2.txt and at https://github.com/belaban/JGroups/blob/master/doc/design/RELAY2.txt.classProvides 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 MBean in org.jgroups.util
Classes in org.jgroups.util with annotations of type MBean