| Interface | Description |
|---|---|
| MessageSenderService |
Abstract away message submission.
|
| NodeSelectorService |
Contains the
NodeSelectorStrategy selected for each index,
or returns the default one. |
| NodeSelectorStrategy |
A NodeSelectorStrategy represents the strategy by which a node out of
the JGroups cluster is selected to apply changes to the Lucene index.
|
| Class | Description |
|---|---|
| AutoNodeSelector |
This
NodeSelectorStrategy picks a single master across all nodes participating
in the JGroups cluster deterministically: this way all nodes in the group will
have an agreement on which node is going to be the master. |
| DefaultNodeSelectorService |
Maintains a registry of node selectors per index,
so that we can handle each index independently while sharing
the same JGroups channel.
|
| DispatchMessageSender |
We use the MessageDispatcher instead of the JChannel to be able to use blocking
operations (optionally) without having to rely on the RSVP protocol
being configured on the stack.
|
| JGroupsBackendQueueProcessor |
This index backend is able to switch dynamically between a standard
Lucene index writing backend and one which sends work remotely over
a JGroups channel.
|
| JGroupsBackendQueueTask |
Responsible for sending Lucene works from slave nodes to master node
|
| JGroupsMasterMessageListener |
A
Receiver that listens for messages from slave nodes and apply them. |
| MasterNodeSelector |
This
NodeSelectorStrategy is a static configuration for the local
node to always process index operations locally, and accept index operations
from remote nodes configured as slaves. |
| MessageListenerToRequestHandlerAdapter |
Delegate request to listener.
|
| MessageSerializationHelper |
While we use the configured LuceneWorkSerializer to serialize the Work queue,
the JGroups backend needs to prefix the stream with the index name.
|
| SlaveNodeSelector |
This
NodeSelectorStrategy is a static configuration for the local
node to avoid processing any indexing operations locally. |
Copyright © 2006–2017 Hibernate. All rights reserved.