WildFly JGroups Subsystem Configuration: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 72: Line 72:
3. JGroups code defaults.
3. JGroups code defaults.


=Configuring a New Protocol or Transport Attribute=
=Configuring a New Protocol or Transport Attribute or Overriding Default Values=


A new value for a protocol attribute can be configured with the following syntax:
In case we need to override defaults or specify new properties at the transport level or at the protocol level, specify new sub-elements in <transport> and <protocol> as follows:


<pre>
<pre>
Line 86: Line 86:
</subsystem>
</subsystem>
</pre>
</pre>
<pre>
    <protocol type="PING">
        <property name=”timeout”>20000</property>
    <protocol/>
<pre>


A list of possible configuration attributes can be obtained from <tt>jgroups-defaults.xml</tt> embedded with <tt>$JBOSS_HOME/modules/system/layers/base/org/jboss/as/clustering/jgroups/main/jboss-as-clustering-jgroups-*.jar</tt>. A sample is provided here:
A list of possible configuration attributes can be obtained from <tt>jgroups-defaults.xml</tt> embedded with <tt>$JBOSS_HOME/modules/system/layers/base/org/jboss/as/clustering/jgroups/main/jboss-as-clustering-jgroups-*.jar</tt>. A sample is provided here:

Revision as of 23:54, 29 June 2016




Migrating from https://home.feodorov.com:9443/wiki/Wiki.jsp?page=JBoss7JGroups

Internal

Relevance

  • EAP 6.4

Subjects

Overview

The JGroups stacks are defined within the "jgroups" subsystem:

        <subsystem xmlns="urn:jboss:domain:jgroups:1.1" default-stack="udp">
            <stack name="udp">
                <transport type="UDP" socket-binding="jgroups-udp"/>
                <protocol type="PING"/>
                <protocol type="MERGE3"/>
                <protocol type="FD_SOCK" socket-binding="jgroups-udp-fd"/>
                <protocol type="FD"/>
                <protocol type="VERIFY_SUSPECT"/>
                <protocol type="pbcast.NAKACK"/>
                <protocol type="UNICAST2"/>
                <protocol type="pbcast.STABLE"/>
                <protocol type="pbcast.GMS"/>
                <protocol type="UFC"/>
                <protocol type="MFC"/>
                <protocol type="FRAG2"/>
                <protocol type="RSVP"/>
            </stack>
            <stack name="tcp">
                <transport type="TCP" socket-binding="jgroups-tcp"/>
                <protocol type="MPING" socket-binding="jgroups-mping"/>
                <protocol type="MERGE2"/>
                <protocol type="FD_SOCK" socket-binding="jgroups-tcp-fd"/>
                <protocol type="FD"/>
                <protocol type="VERIFY_SUSPECT"/>
                <protocol type="pbcast.NAKACK"/>
                <protocol type="UNICAST2"/>
                <protocol type="pbcast.STABLE"/>
                <protocol type="pbcast.GMS"/>
                <protocol type="UFC"/>
                <protocol type="MFC"/>
                <protocol type="FRAG2"/>
                <protocol type="RSVP"/>
            </stack>
        </subsystem>

Subsystem Configuration Schema

WildFly Configuration Schemas

Default Values

JGroups stack configuration values are applied from, in this order:

1. standalone*.xml/domain.xml.

2. The ProtocolDefaultsService (implemented by org.jboss.as.clustering.jgroups.subsystem.ProtocolDefaultsService, part of jboss-as-clustering-jgroups-*.jar) which is initialized at startup with values from the file jgroups-defaults.xml embedded in the root of $JBOSS_HOME/modules/system/layers/base/org/jboss/as/clustering/jgroups/main/jboss-as-clustering-jgroups-*.jar or the respective overlay, if the installation was patched.

3. JGroups code defaults.

Configuring a New Protocol or Transport Attribute or Overriding Default Values

In case we need to override defaults or specify new properties at the transport level or at the protocol level, specify new sub-elements in <transport> and <protocol> as follows:

<subsystem xmlns="urn:jboss:domain:jgroups:1.1" ...>
    <stack name="udp">
        <transport type="UDP" socket-binding="jgroups-udp">
            <property name="thread_pool.max_threads">301</property>
        </transport>
        ...
    </stack>
</subsystem>
     <protocol type="PING">
        <property name=”timeout”>20000</property>
     <protocol/>

A list of possible configuration attributes can be obtained from jgroups-defaults.xml embedded with $JBOSS_HOME/modules/system/layers/base/org/jboss/as/clustering/jgroups/main/jboss-as-clustering-jgroups-*.jar. A sample is provided here:

:jgroups-defaults.xml

TCP-based Configuration

:WildFly Clustering without Multicast