All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.gemstone.gemfire.distributed.internal.package.html Maven / Gradle / Ivy

There is a newer version: 2.0-BETA
Show newest version



Classes in this package implement distribution in GemFire.
Every virtual machine working with distributed data (client
VMs, the GemFire console) has an
instance of {@link
com.gemstone.gemfire.distributed.internal.DistributionManager}
that is responsible for sending and receiving {@link
com.gemstone.gemfire.distributed.internal.DistributionMessage}s.
A DistributionManager has a unique {@link
com.gemstone.gemfire.distributed.internal.DistributionManager#getId
id} and uses a JavaGroups com.gemstone.org.javagroups.Channel
channel to discover the other members of the distributed system.  It
also uses JavaGroups to detect when a member has left the group.  Note
that GemStone has com.gemstone.gemfire.distributed.internal.direct.DirectChannel#patchUpAddress
modified the implementation of the JavaGroups com.gemstone.org.jgroups.stack.IpAddress to hold the port on which
the distribution manager's direct channel runs.  This optimization
allows us to start a distribution manager without having to send out a
"startup" message.  (GemStone has also modified JGroups to perform
less XML parsing.  This greatly improves the performace of creating a
JavaGroups channel.)  While some messages may be broadcast to all
members of the group, the vast majority of messages are only intended
for a subset of the group are sent point-to-point over a {@link
com.gemstone.gemfire.distributed.internal.direct.DirectChannel}.
The JGroups channel and DirectChannel are combined
into a {@link
com.gemstone.gemfire.distributed.internal.DistributionChannel}
that is used by the DistributionManager.





© 2015 - 2024 Weber Informatics LLC | Privacy Policy