程序包 | 说明 |
---|---|
com.fr.third.jgroups |
Provides top-level public JGroups classes such as Channel, Message, etc.
|
com.fr.third.jgroups.blocks |
Provides building blocks that are layered on top of channels.
|
com.fr.third.jgroups.blocks.mux | |
com.fr.third.jgroups.fork | |
com.fr.third.jgroups.jmx | |
com.fr.third.jgroups.protocols |
Provides implementations of transport protocols which are
responsible for sending and receiving messages to/from the network.
|
com.fr.third.jgroups.protocols.pbcast |
Supports probabilistic broadcasts.
|
com.fr.third.jgroups.protocols.relay | |
com.fr.third.jgroups.protocols.relay.config | |
com.fr.third.jgroups.protocols.rules | |
com.fr.third.jgroups.protocols.tom | |
com.fr.third.jgroups.stack |
Support for managing protocol stacks.
|
com.fr.third.jgroups.tests | |
com.fr.third.jgroups.util |
Provides useful functionality which cannot be assigned to any particular other package.
|
构造器和说明 |
---|
JChannel(Protocol... protocols)
Creates a channel from an array of protocols.
|
构造器和说明 |
---|
JChannel(java.util.Collection<Protocol> protocols)
Creates a channel from an array of protocols.
|
限定符和类型 | 字段和说明 |
---|---|
protected Protocol |
RequestCorrelator.transport
The protocol layer to use to pass up/down messages.
|
限定符和类型 | 方法和说明 |
---|---|
protected RequestCorrelator |
MessageDispatcher.createRequestCorrelator(Protocol transport,
RequestHandler handler,
Address local_addr) |
构造器和说明 |
---|
RequestCorrelator(Protocol transport,
RequestHandler handler,
Address local_addr) |
RequestCorrelator(short id,
Protocol transport,
RequestHandler handler,
Address local_addr)
Constructor.
|
限定符和类型 | 方法和说明 |
---|---|
protected RequestCorrelator |
MuxRpcDispatcher.createRequestCorrelator(Protocol transport,
RequestHandler handler,
Address localAddr) |
protected RequestCorrelator |
MuxMessageDispatcher.createRequestCorrelator(Protocol transport,
RequestHandler handler,
Address localAddr) |
构造器和说明 |
---|
MuxRequestCorrelator(short id,
Protocol transport,
RequestHandler handler,
Address localAddr) |
限定符和类型 | 类和说明 |
---|---|
class |
ForkProtocol
Acts as bottom protool of a fork-stack.
|
class |
ForkProtocolStack
Protocol stack which maintains the mapping between fork-channel IDs and ForkChannels
|
限定符和类型 | 方法和说明 |
---|---|
protected static ForkProtocolStack |
ForkChannel.getForkStack(Protocol prot) |
限定符和类型 | 方法和说明 |
---|---|
protected static FORK |
ForkChannel.getFORK(Channel ch,
int position,
java.lang.Class<? extends Protocol> neighbor,
boolean create_fork_if_absent) |
构造器和说明 |
---|
ForkChannel(Channel main_channel,
java.lang.String fork_stack_id,
java.lang.String fork_channel_id,
boolean create_fork_if_absent,
int position,
java.lang.Class<? extends Protocol> neighbor,
Protocol... protocols)
Creates a new fork-channel from a main-channel.
|
ForkChannel(Channel main_channel,
java.lang.String fork_stack_id,
java.lang.String fork_channel_id,
Protocol... protocols)
Creates a new fork-channel from a main-channel.
|
构造器和说明 |
---|
ForkChannel(Channel main_channel,
java.lang.String fork_stack_id,
java.lang.String fork_channel_id,
boolean create_fork_if_absent,
int position,
java.lang.Class<? extends Protocol> neighbor,
Protocol... protocols)
Creates a new fork-channel from a main-channel.
|
限定符和类型 | 方法和说明 |
---|---|
static javax.management.DynamicMBean |
JmxConfigurator.wrap(Protocol p)
Wrap Protocol with DynamicMBean interface.
|
限定符和类型 | 类和说明 |
---|---|
class |
AUTH
The AUTH protocol adds a layer of authentication to JGroups
|
class |
BARRIER
All messages up the stack have to go through a barrier (read lock, RL).
|
class |
BasicTCP
Shared base class for TCP protocols
|
class |
BPING
Broadcast PING.
|
class |
CENTRAL_EXECUTOR
This is a central executor service where each request is sent to the coordinator
for either a task or a current waiting thread.
|
class |
CENTRAL_LOCK
Implementation of a locking protocol which acquires locks by contacting the coordinator.
|
class |
COMPRESS
Compresses the payload of a message.
|
class |
COUNTER
Protocol which is used by
CounterService to provide a distributed atomic counter |
class |
DAISYCHAIN
Implementation of daisy chaining.
|
class |
DELAY
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 |
DISCARD
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 |
DISCARD_PAYLOAD
Discards a message whose sequence number (in the payload, as a Long) matches seqno 2 times,
before passing it down.
|
class |
Discovery
The Discovery protocol retrieves the initial membership (used by GMS and MERGE3) by sending discovery requests.
|
class |
DUPL
Duplicates outgoing or incoming messages by copying them
|
class |
ENCRYPT
ENCRYPT layer.
|
class |
EXAMPLE
Example of a protocol layer.
|
class |
Executing
This is the base protocol used for executions.
|
class |
FC
已过时。
Succeeded by MFC and UFC
|
class |
FD
Failure detection based on simple heartbeat protocol.
|
class |
FD_ALL
Failure detection based on simple heartbeat protocol.
|
class |
FD_ALL2
Failure detection based on simple heartbeat protocol.
|
class |
FD_HOST
Failure detection protocol which detects the crash or hanging of entire hosts and suspects all cluster members
on those hosts.
|
class |
FD_PING
已过时。
Use
FD_HOST instead. Will be removed in 4.0. |
class |
FD_SOCK
Failure detection protocol based on sockets.
|
class |
FILE_PING
Simple discovery protocol which uses a file on shared storage such as an SMB share, NFS mount or S3.
|
class |
FlowControl
Simple flow control protocol based on a credit system.
|
class |
FORK
The FORK protocol; multiplexes messages to different forks in a stack (https://issues.jboss.org/browse/JGRP-1613).
|
class |
FORWARD_TO_COORD
Forwards a message to the current coordinator.
|
class |
FRAG
Fragmentation layer.
|
class |
FRAG2
Fragmentation layer.
|
class |
GOOGLE_PING
Discovery protocol for Google Cloud Storage.
|
class |
HDRS
Example of a protocol layer.
|
class |
JDBC_PING
Discovery protocol using a JDBC connection to a shared database.
|
class |
Locking
Base locking protocol, handling most of the protocol communication with other instances.
|
class |
MAKE_BATCH
Intercepts individual up messages and creates batches from them, passing the batches up.
|
class |
MERGE2
已过时。
Use
MERGE3 instead, as it causes less traffic, especially for large clusters |
class |
MERGE3
Protocol to discover subgroups; e.g., existing due to a network partition (that healed).
|
class |
MFC
Simple flow control protocol based on a credit system.
|
class |
MPING
Uses its own IP multicast socket to send and receive discovery requests/responses.
|
class |
PDC
Persistent Discovery Cache.
|
class |
PEER_LOCK
Implementation of a locking protocol which acquires locks by contacting all of the nodes of a cluster.
|
class |
PERF
Protocol measuring latency between stacks.
|
class |
PING
The PING protocol retrieves the initial membership by mcasting a discovery request (via the multicast capable
transport) to all current cluster members
The responses should allow us to determine the coordinator which we have to contact, e.g. in case we want to join
the group.
|
class |
PRIO
This protocol will provide message sending and receiving prioritization.
|
class |
RACKSPACE_PING
Discovery protocol based on Rackspace Cloud Files storage solution
|
class |
RATE_LIMITER
Protocol which sends at most max_bytes in time_period milliseconds.
|
class |
RELAY
Simple relaying protocol: RELAY is added to the top of the stack, creates a channel to a bridge cluster,
and - if coordinator - relays all multicast messages via the bridge cluster to the remote cluster.
|
class |
RSVP
Protocol which implements synchronous messages (https://issues.jboss.org/browse/JGRP-1389).
|
class |
S3_PING
Discovery protocol using Amazon's S3 storage.
|
class |
SASL
The SASL protocol implements authentication and, if requested by the mech, encryption
|
class |
SCOPE
已过时。
Use the async invocation API instead:
http://www.jgroups.org/manual-3.x/html/user-building-blocks.html#AsyncInvocation
|
class |
SEQUENCER
Implementation of total order protocol using a sequencer.
|
class |
SEQUENCER2
Implementation of total order protocol using a sequencer_uum.
|
class |
SHARED_LOOPBACK
Loopback transport shared by all channels within the same VM.
|
class |
SHARED_LOOPBACK_PING
Discovery protocol running over
SHARED_LOOPBACK only. |
class |
SHUFFLE
Reorders messages by buffering them and shuffling the result after TIMEOUT ms.
|
class |
SIZE
Protocol which prints out the real size of a message.
|
class |
STATS
Provides various stats
|
class |
STOMP
Protocol which provides STOMP (http://stomp.codehaus.org/) support.
|
class |
SWIFT_PING
Discovery protocol based on Openstack Swift (object storage).
|
class |
TCP
TCP based protocol.
|
class |
TCP_NIO
Transport using NIO
|
class |
TCPGOSSIP
The TCPGOSSIP protocol layer retrieves the initial membership (used by the
GMS when started by sending event FIND_INITIAL_MBRS down the stack).
|
class |
TCPPING
The TCPPING protocol defines a static cluster membership.
|
class |
TP
Generic transport - specific implementations should extend this abstract class.
|
static class |
TP.ProtocolAdapter
Used when the transport is shared (singleton_name !
|
class |
TRACE |
class |
TUNNEL
Replacement for UDP.
|
class |
UDP
IP multicast transport based on UDP.
|
class |
UFC
Simple flow control protocol based on a credit system.
|
class |
UNICAST
Reliable unicast layer.
|
class |
UNICAST2
Reliable unicast layer.
|
class |
UNICAST3
Reliable unicast protocol using a combination of positive and negative acks.
|
class |
VERIFY_SUSPECT
Catches SUSPECT events traveling up the stack.
|
限定符和类型 | 字段和说明 |
---|---|
protected java.util.concurrent.ConcurrentMap<java.lang.String,Protocol> |
FORK.fork_stacks |
protected java.util.concurrent.ConcurrentMap<AsciiString,Protocol> |
TP.up_prots
If singleton_name is enabled, this map is used to de-multiplex incoming messages according to their cluster
names (attached to the message by the transport anyway).
|
限定符和类型 | 方法和说明 |
---|---|
Protocol |
FORK.createForkStack(java.lang.String fork_stack_id,
ProtocolStack stack,
boolean replace_existing,
java.util.List<Protocol> protocols)
Creates a new fork-stack from protocols and adds it into the hashmap of fork-stack (key is fork_stack_id).
|
Protocol |
FORK.get(java.lang.String fork_stack_id) |
Protocol |
FORK.putIfAbsent(java.lang.String fork_stack_id,
Protocol prot) |
限定符和类型 | 方法和说明 |
---|---|
protected static java.util.List<Protocol> |
FORK.createProtocols(ProtocolStack stack,
java.util.List<ProtocolConfiguration> protocol_configs)
Creates a fork-stack from the configuration, initializes all protocols (setting values),
sets the protocol stack as top protocol, connects the protocols and calls init() on them.
|
java.util.concurrent.ConcurrentMap<AsciiString,Protocol> |
TP.getUpProtocols() |
限定符和类型 | 方法和说明 |
---|---|
Protocol |
FORK.putIfAbsent(java.lang.String fork_stack_id,
Protocol prot) |
限定符和类型 | 方法和说明 |
---|---|
Protocol |
FORK.createForkStack(java.lang.String fork_stack_id,
ProtocolStack stack,
boolean replace_existing,
java.util.List<Protocol> protocols)
Creates a new fork-stack from protocols and adds it into the hashmap of fork-stack (key is fork_stack_id).
|
构造器和说明 |
---|
TP.ProtocolAdapter(AsciiString cluster_name,
Address local_addr,
short transport_id,
Protocol up,
Protocol down,
java.lang.String pattern) |
限定符和类型 | 类和说明 |
---|---|
class |
FLUSH
Flush, as it name implies, forces group members to flush their pending messages while blocking
them to send any additional messages.
|
class |
GMS
Group membership protocol.
|
class |
NAKACK
Negative AcKnowledgement layer (NAKs).
|
class |
NAKACK2
Negative AcKnowledgement layer (NAKs).
|
class |
STABLE
Computes the broadcast messages that are stable; i.e., have been delivered by all members.
|
class |
STATE
STATE streams the state (written to an OutputStream) to the state requester in chunks (defined by
chunk_size).
|
class |
STATE_SOCK
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
STATE_TRANSFER protocol based on byte array transfer.
|
class |
StreamingStateTransfer
Base class for state transfer protocols which use streaming (or chunking) to transfer state between two members.
|
限定符和类型 | 类和说明 |
---|---|
class |
RELAY2
Design: .
|
限定符和类型 | 字段和说明 |
---|---|
protected Protocol[] |
RelayConfig.ProgrammaticBridgeConfig.protocols |
限定符和类型 | 方法和说明 |
---|---|
protected static java.lang.String |
RelayConfig.ProgrammaticBridgeConfig.printProtocols(Protocol[] protocols) |
构造器和说明 |
---|
RelayConfig.ProgrammaticBridgeConfig(java.lang.String cluster_name,
Protocol[] prots) |
限定符和类型 | 类和说明 |
---|---|
class |
SUPERVISOR
Protocol which supervises other protocols.
|
限定符和类型 | 类和说明 |
---|---|
class |
TOA
Total Order Anycast with three communication steps (based on Skeen's Algorithm).
|
限定符和类型 | 类和说明 |
---|---|
class |
ProtocolStack
A ProtocolStack manages a number of protocols layered above each other.
|
限定符和类型 | 字段和说明 |
---|---|
protected Protocol |
ProtocolStack.bottom_prot |
protected Protocol |
Protocol.down_prot |
protected Protocol |
ProtocolStack.top_prot |
protected Protocol |
Protocol.up_prot |
限定符和类型 | 方法和说明 |
---|---|
static Protocol |
Configurator.connectProtocols(java.util.List<Protocol> protocol_list)
Creates a protocol stack by iterating through the protocol list and connecting
adjacent layers.
|
protected static Protocol |
Configurator.createLayer(ProtocolStack stack,
ProtocolConfiguration config) |
protected Protocol |
ProtocolStack.createProtocol(java.lang.String classname) |
static Protocol |
Configurator.createProtocol(java.lang.String prot_spec,
ProtocolStack stack)
Creates a new protocol given the protocol specification.
|
Protocol |
ProtocolStack.findProtocol(java.lang.Class<?>... classes)
Finds the first protocol of a list and returns it.
|
Protocol |
ProtocolStack.findProtocol(java.lang.Class<?> clazz) |
Protocol |
ProtocolStack.findProtocol(java.lang.String name)
Returns a given protocol or null if not found
|
Protocol |
ProtocolStack.getBottomProtocol() |
Protocol |
Protocol.getDownProtocol() |
Protocol |
ProtocolStack.getTopProtocol() |
Protocol |
Protocol.getUpProtocol() |
Protocol |
Protocol.level(java.lang.String level) |
Protocol |
ProtocolStack.removeProtocol(java.lang.Class... protocols) |
Protocol |
ProtocolStack.removeProtocol(java.lang.Class prot) |
Protocol |
ProtocolStack.removeProtocol(Protocol prot) |
Protocol |
ProtocolStack.removeProtocol(java.lang.String prot_name)
Removes a protocol from the stack.
|
Protocol |
Configurator.setupProtocolStack(java.util.List<ProtocolConfiguration> config) |
static Protocol |
Configurator.setupProtocolStack(java.util.List<ProtocolConfiguration> protocol_configs,
ProtocolStack st)
The configuration string has a number of entries, separated by a ':' (colon).
|
Protocol |
Configurator.setupProtocolStack(ProtocolStack copySource) |
Protocol |
Protocol.setValue(java.lang.String name,
java.lang.Object value) |
Protocol |
Protocol.setValues(java.util.Map<java.lang.String,java.lang.Object> values) |
限定符和类型 | 方法和说明 |
---|---|
java.util.List<Protocol> |
ProtocolStack.copyProtocols(ProtocolStack targetStack) |
static java.util.List<Protocol> |
Configurator.createProtocols(java.util.List<ProtocolConfiguration> protocol_configs,
ProtocolStack stack)
Takes vector of ProtocolConfigurations, iterates through it, creates Protocol for
each ProtocolConfiguration and returns all Protocols in a list.
|
java.util.List<Protocol> |
ProtocolStack.getProtocols()
Returns all protocols in a list, from top to bottom.
|
限定符和类型 | 方法和说明 |
---|---|
ProtocolStack |
ProtocolStack.addProtocol(Protocol prot)
Adds a protocol at the tail of the protocol list
|
ProtocolStack |
ProtocolStack.addProtocols(Protocol... prots)
Adds a list of protocols
|
ProtocolStack |
ProtocolStack.bottomProtocol(Protocol bottom) |
static RouterStubManager |
RouterStubManager.emptyGossipClientStubManager(Protocol p) |
static java.lang.Object |
Configurator.getValueFromProtocol(Protocol protocol,
java.lang.reflect.Field field) |
static java.lang.Object |
Configurator.getValueFromProtocol(Protocol protocol,
java.lang.String field_name) |
void |
ProtocolStack.insertProtocol(Protocol prot,
int position,
java.lang.Class<? extends Protocol>... neighbor_prots) |
void |
ProtocolStack.insertProtocol(Protocol prot,
int position,
java.lang.Class<? extends Protocol> neighbor_prot) |
void |
ProtocolStack.insertProtocol(Protocol prot,
int position,
java.lang.String neighbor_prot)
Inserts an already created (and initialized) protocol into the protocol list.
|
void |
ProtocolStack.insertProtocolAtTop(Protocol prot) |
void |
ProtocolStack.insertProtocolInStack(Protocol prot,
Protocol neighbor,
int position) |
Protocol |
ProtocolStack.removeProtocol(Protocol prot) |
protected static void |
Configurator.removeProvidedDownServices(Protocol protocol,
java.util.List<java.lang.Integer> events)
Removes all events provided by the protocol above protocol from events
|
protected static void |
Configurator.removeProvidedUpServices(Protocol protocol,
java.util.List<java.lang.Integer> events)
Removes all events provided by the protocol below protocol from events
|
void |
ProtocolStack.replaceProtocol(Protocol existing_prot,
Protocol new_prot)
Replaces one protocol instance with another.
|
void |
Protocol.setDownProtocol(Protocol prot) |
void |
Protocol.setUpProtocol(Protocol prot) |
ProtocolStack |
ProtocolStack.topProtocol(Protocol top) |
限定符和类型 | 方法和说明 |
---|---|
ProtocolStack |
ProtocolStack.addProtocols(java.util.List<Protocol> prots)
Adds a list of protocols
|
static Protocol |
Configurator.connectProtocols(java.util.List<Protocol> protocol_list)
Creates a protocol stack by iterating through the protocol list and connecting
adjacent layers.
|
static java.util.Map<java.lang.String,java.util.Map<java.lang.String,Configurator.InetAddressInfo>> |
Configurator.createInetAddressMap(java.util.List<ProtocolConfiguration> protocol_configs,
java.util.List<Protocol> protocols) |
static void |
Configurator.ensureValidBindAddresses(java.util.List<Protocol> protocols)
Makes sure that all fields annotated with @LocalAddress is (1) an InetAddress and (2) a valid address on any
local network interface
|
static java.util.List<java.net.InetAddress> |
Configurator.getInetAddresses(java.util.List<Protocol> protocols) |
void |
ProtocolStack.insertProtocol(Protocol prot,
int position,
java.lang.Class<? extends Protocol> neighbor_prot) |
static void |
Configurator.sanityCheck(java.util.List<Protocol> protocols)
Throws an exception if sanity check fails.
|
static void |
Configurator.setDefaultValues(java.util.List<Protocol> protocols) |
static void |
Configurator.setDefaultValues(java.util.List<Protocol> protocols,
StackType ip_version) |
static void |
Configurator.setDefaultValues(java.util.List<ProtocolConfiguration> protocol_configs,
java.util.List<Protocol> protocols,
StackType ip_version) |
构造器和说明 |
---|
RouterStubManager(Protocol owner,
java.lang.String channelName,
Address logicalAddress,
long interval) |
限定符和类型 | 方法和说明 |
---|---|
protected static Protocol[] |
UnicastTestSharedLoopback.props() |
限定符和类型 | 方法和说明 |
---|---|
void |
UnicastTest.init(Protocol[] props,
long sleep_time,
boolean busy_sleep,
java.lang.String name) |
限定符和类型 | 字段和说明 |
---|---|
protected Protocol |
ForwardQueue.down_prot |
protected Protocol |
ForwardQueue.up_prot |
限定符和类型 | 方法和说明 |
---|---|
Protocol |
ForwardQueue.getDownProt() |
static Protocol[] |
Util.getTestStack(Protocol... additional_protocols)
Returns a default stack for testing with transport = SHARED_LOOPBACK
|
Protocol |
ForwardQueue.getUpProt() |
限定符和类型 | 方法和说明 |
---|---|
static JChannel |
Util.createChannel(Protocol... prots) |
static Protocol[] |
Util.getTestStack(Protocol... additional_protocols)
Returns a default stack for testing with transport = SHARED_LOOPBACK
|
void |
ForwardQueue.setDownProt(Protocol down_prot) |
void |
ForwardQueue.setUpProt(Protocol up_prot) |