some q's re: impact(s) of ISPN/JGRPS config ...
cotton.ben Jan 30, 2014 4:25 PMPlease consider reviewing our updated JGroups & Infinispan xml config files (attached) as it is the basis for our asking the following questions:
Why would the Unicast/Muticast buffer sizes for UDP transport only consider rmem_max settings on unix? Can it consider udp_mem settings which is more relevant?
Why does the org.infinispan.remoting.transport.TopologyAwareAddress API not provide accessor/setter for nodeName attribute?
Is is true that ASYNC communications is not supported in Distributed mode & it will fall-back to SYNC communications with default timeout of 15 secs?
Once the list of old & new members are identified using the org.infinispan.notifications.cachemanagerlistener.event.ViewChangedEvent API when a node leaves the cluster upon org.infinispan.remoting.transport.jgroups.SuspectException; is there any API that will allow the failed node to be joined-back to the cluster?
What's the default value for lifespan & cleanupTaskFrequency of L1 element? As per schema; default is 60000 (1min) while the documentation indicates 10mins.
Why is the RadarGun measured throughput(s) lower with the newer protocols' settings in Jgroups 3.3 (when compared to the higher throughput in earlier Jgroups version)?
---- jgroups-new.xml ----
<!--
Fast configuration for local mode, ie. all members reside on the same host. Setting ip_ttl to 0 means that
no multicast packet will make it outside the local host.
Therefore, this configuration will NOT work to cluster members residing on different hosts !
Author: Bela Ban
Version: $Id: fast-local.xml,v 1.9 2009/12/18 14:50:00 belaban Exp $
-->
<config xmlns="urn:org:jgroups"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:org:jgroups http://www.jgroups.org/schema/JGroups-3.3.xsd">
<!-- TRANSPORT -->
<UDP mcast_addr="239.1.1.1"
mcast_port="${jgroups.udp.mcast_port:45111}"
tos="8"
ucast_recv_buf_size="4M"
ucast_send_buf_size="640K"
mcast_recv_buf_size="4M"
mcast_send_buf_size="640K"
loopback="true"
max_bundle_size="64k"
max_bundle_timeout="30"
bundler_type="new"
ip_ttl="${jgroups.udp.ip_ttl:1}"
ip_mcast="true"
enable_diagnostics="true"
thread_naming_pattern="clp"
timer_type="new3"
timer.min_threads="4"
timer.max_threads="10"
timer.keep_alive_time="3000"
timer.queue_max_size="1000"
timer.rejection_policy="discard"
thread_pool.enabled="true"
thread_pool.min_threads="40"
thread_pool.max_threads="100"
thread_pool.keep_alive_time="5000"
thread_pool.queue_enabled="true"
thread_pool.queue_max_size="10000"
thread_pool.rejection_policy="discard"
oob_thread_pool.enabled="true"
oob_thread_pool.min_threads="40"
oob_thread_pool.max_threads="100"
oob_thread_pool.keep_alive_time="5000"
oob_thread_pool.queue_enabled="true"
oob_thread_pool.queue_max_size="100"
oob_thread_pool.rejection_policy="discard"/>
<!-- MEMBER DISCOVERY -->
<PING timeout="10000"
num_initial_members="10"
break_on_coord_rsp="true"/>
<!-- MERGE AFTER NETWORK PARTITION -->
<MERGE3 max_interval="30000"
min_interval="10000"
max_participants_in_merge="0"/>
<!-- FAILURE DETECTION -->
<!-- <FD_SOCK /> -->
<!-- <FD_PING /> -->
<!-- <FD_ALL /> -->
<FD timeout="60000" max_tries="10" />
<VERIFY_SUSPECT timeout="60000" num_msgs="5" />
<!-- MESSAGE TRANSMISSION -->
<!-- <pbcast.NAKACK use_mcast_xmit="false"
retransmit_timeout="100,300,600,1200"
discard_delivered_msgs="true"/> -->
<pbcast.NAKACK2 xmit_interval="1000"
max_rebroadcast_timeout="2000"
use_mcast_xmit="true"
use_mcast_xmit_req="true"
discard_delivered_msgs="true"/>
<!-- <UNICAST2 timeout="300,600,1200"
conn_expiry_timeout="0"/> -->
<UNICAST3 xmit_interval="1000"
max_retransmit_time="2000"
conn_expiry_timeout="0" />
<!-- <RSVP resend_interval="2000" timeout="10000"/> -->
<!-- MESSAGE STABILITY -->
<!-- <BARRIER /> -->
<!-- <pbcast.STATE_TRANSFER /> -->
<!-- <pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000"
max_bytes="1000000"/> -->
<pbcast.STABLE stability_delay="1000" desired_avg_gossip="60000"
max_bytes="5M"/>
<pbcast.FLUSH timeout="1000" />
<!-- GROUP MEMBERSHIP -->
<!-- <pbcast.GMS print_local_addr="true" join_timeout="60000" leave_timeout="60000"
max_bundling_time="20000"
view_bundling="true"/> -->
<pbcast.GMS print_local_addr="true"
join_timeout="10000"
leave_timeout="10000"
merge_timeout="5000"
view_bundling="true"
max_bundling_time="500"
view_ack_collection_timeout="2000"/>
<!-- FLOW CONTROL -->
<!-- <FC max_credits="2M"
min_threshold="0.10"/> -->
<MFC max_credits="2M"
min_threshold="0.25"/>
<UFC max_credits="2M"
min_threshold="0.25"/>
<!-- FRAGMENTATION -->
<!-- <FRAG2 frag_size="60000" /> -->
<FRAG2 frag_size="62K" />
</config>
------------------ infinsipan-config.xml ---------------------------
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ JBoss, Home of Professional Open Source ~ Copyright 2009 Red Hat
Inc. and/or its affiliates and other ~ contributors as indicated by
the @author tags. All rights reserved. ~ See the copyright.txt in the
distribution for a full listing of ~ individual contributors. ~ ~ This
is free software; you can redistribute it and/or modify it ~ under the
terms of the GNU Lesser General Public License as ~ published by the
Free Software Foundation; either version 2.1 of ~ the License, or (at
your option) any later version. ~ ~ This software is distributed in
the hope that it will be useful, ~ but WITHOUT ANY WARRANTY; without
even the implied warranty of ~ MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU ~ Lesser General Public License for
more details. ~ ~ You should have received a copy of the GNU Lesser
General Public ~ License along with this software; if not, write to
the Free ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor,
Boston, MA ~ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-->
<!--
infinispan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:infinispan:config:5.3
http://www.infinispan.org/schemas/infinispan-config-5.3.xsd"
xmlns="urn:infinispan:config:5.3"
-->
<infinispan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:infinispan:config:5.3
http://www.infinispan.org/schemas/infinispan-config-5.3.xsd"
xmlns="urn:infinispan:config:5.3">
<global>
<transport siteId="${nodename}" machineId="m1" rackId="r1"
nodeName="${nodename}" clusterName="AggregationEngine">
<properties>
<property name="configurationFile" value="./xml/jgroups-new.xml" />
</properties>
</transport>
<asyncListenerExecutor>
<properties>
<property name="maxThreads" value="4" />
</properties>
</asyncListenerExecutor>
<asyncTransportExecutor>
<properties>
<property name="maxThreads" value="100" />
</properties>
</asyncTransportExecutor>
<globalJmxStatistics enabled="true" />
</global>
<default>
<jmxStatistics enabled="true" />
<clustering mode="dist">
<!-- <l1 enabled="true" lifespan="60000" /> -->
<l1 enabled="true" lifespan="60000" cleanupTaskFrequency="60000"/>
<!-- <hash numOwners="2" /> -->
<hash numOwners="2" numSegments="1000"/>
<!-- SYNC mode would timeout in specified secs & hence greater value is recommended -->
<sync replTimeout="3600000" />
<!-- ASYNC mode almost always times-out in 16secs & hence not used -->
<!-- <async /> -->
</clustering>
</default>
</infinispan>