Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-9847

Extend configuration to allow inline JGroups configuration and inheritance

    Details

      Description

      Allowing inline JGroups configurations to increase usability.
      Also support the following extra features:

      • stack inheritance with protocol replacement/override
      • easier xsite configuration

      <jgroups transport="org.infinispan.remoting.transport.jgroups.JGroupsTransport">
            <!-- Load external JGroups stacks -->
            <stack-file name="udp" path="stacks/udp.xml"/>
            <stack-file name="tcp" path="stacks/tcp.xml"/>
            <!-- Inline definition -->
            <stack name="mping">
               <TCP bind_port="7800" port_range="30" recv_buf_size="20000000" send_buf_size="640000"
                    sock_conn_timeout="300" bundler_type="no-bundler"
                    thread_pool.min_threads="0" thread_pool.max_threads="25" thread_pool.keep_alive_time="5000"/>
               <MPING bind_addr="127.0.0.1" break_on_coord_rsp="true"
                      mcast_addr="${jgroups.mping.mcast_addr:228.2.4.6}"
                      mcast_port="${jgroups.mping.mcast_port:43366}"
                      ip_ttl="${jgroups.udp.ip_ttl:2}"/>
       
               <MERGE3/>
               <FD_SOCK/>
               <FD_ALL timeout="3000"
                       interval="1000"
                       timeout_check_interval="1000"
               />
               <VERIFY_SUSPECT timeout="1000"/>
               <pbcast.NAKACK2
                       use_mcast_xmit="false"
                       xmit_interval="100"
                       xmit_table_num_rows="50"
                       xmit_table_msgs_per_row="1024"
                       xmit_table_max_compaction_time="30000"/>
               <UNICAST3
                       xmit_interval="100"
                       xmit_table_num_rows="50"
                       xmit_table_msgs_per_row="1024"
                       xmit_table_max_compaction_time="30000"
               />
               <RSVP />
               <pbcast.STABLE stability_delay="200"
                              desired_avg_gossip="2000"
                              max_bytes="1M"
               />
               <pbcast.GMS print_local_addr="false"
                           join_timeout="${jgroups.join_timeout:2000}"/>
               <MFC max_credits="2M" min_threshold="0.40"/>
               <FRAG3/>
            </stack>
            <!-- Use the "tcp" stack but override some protocol attributes -->
            <stack name="mytcp" extends="tcp">
               <MERGE3 max_interval="20000"/>
            </stack>
            <!-- Use the "tcp" stack but replace the discovery -->
            <stack name="tcpgossip" extends="tcp">
               <TCPGOSSIP initial_hosts="${jgroups.tunnel.gossip_router_hosts:localhost[12001]}" stack.combine="replace:TCP_NIO2"/>
            </stack>
            <!-- Add a relay configuration using a previously declared stack to talk to the remote site -->
            <stack name="xsite" extends="udp">
               <relay site="LON">
                  <remote-site name="NYC" stack="tcpgossip"/>
               </relay>
            </stack>
         </jgroups>
      

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  NadirX Tristan Tarrant
                  Reporter:
                  NadirX Tristan Tarrant
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  3 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: