which protocols use OOB and which use regular thread pools?

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

which protocols use OOB and which use regular thread pools?

dukehoops
I am rather new to JGroups and have minimal knowledge of net protocols, so pardon the naivete.  Nevertheless, I'd like to right-size both thread_pool and oob_thread_pool for the config below, but have a difficult time figuring out appropriate values because I don't know which of the two pools is used by each of the protocols in the stack. Could someone please go through this stack and mark each as regular or OOB? For brevity the stack is (bottom to up):

TCP
TCPPING
FD_SOCK
FD
VERIFY_SUSPECT
NAKACK
UNICAST
STABLE
VIEW_SYNC
GMS
FC
FRAG2
STATE_TRANSFER
FLUSH

thanks!

<config>
    <TCP
       singleton_name="tcp"
       
       bind_port="7800"
       port_range="10"
       loopback="false"
       recv_buf_size="10000000"
       send_buf_size="640000"
       discard_incompatible_packets="true"
       max_bundle_size="64000"
       max_bundle_timeout="10"      
       enable_bundling="true"
       use_send_queues="false"
       sock_conn_timeout="300"
       skip_suspected_members="true"      

       thread_pool.enabled="true"
       thread_pool.min_threads="2"
       thread_pool.max_threads="5"
       thread_pool.keep_alive_time="60000"
       thread_pool.queue_enabled="false"
       thread_pool.queue_max_size="1000"
       thread_pool.rejection_policy="run"

       oob_thread_pool.enabled="true"
       oob_thread_pool.min_threads="1"
       oob_thread_pool.max_threads="3"
       oob_thread_pool.keep_alive_time="60000"
       oob_thread_pool.queue_enabled="false"
       oob_thread_pool.queue_max_size="500"
       oob_thread_pool.rejection_policy="run"/>
    />
   
    <TCPPING
        timeout="3000"
        initial_hosts="${jgroups.tcpping.initial_hosts:localhost[7800]}"
        port_range="2"
        num_initial_members="1"
    />

   
    <MERGE2 max_interval="10000" min_interval="5000"/>
   
    <FD_SOCK/>

    <FD timeout="10000" max_tries="3" shun="true" />
    <VERIFY_SUSPECT timeout="1500"/>
    <pbcast.NAKACK
        use_mcast_xmit="false" gc_lag="10"
                    retransmit_timeout="100,300,900,1200"
                    discard_delivered_msgs="true"/>
    <UNICAST timeout="100,300,900"/>
    <pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000" max_bytes="400000"/>
    <VIEW_SYNC avg_send_interval="10000"/>
    <pbcast.GMS
        print_local_addr="true" join_timeout="3000"
        shun="true"  view_bundling="true"/>
    <FC max_credits="2000000" min_threshold="0.10"/>
    <FRAG2 frag_size="60000"/>
    <pbcast.STATE_TRANSFER/> 

    <pbcast.FLUSH/>
</config>
Reply | Threaded
Open this post in threaded view
|

Re: which protocols use OOB and which use regular thread pools?

Bela Ban
OOB messages are only handled at the transport level, by the OOB thread
pool. Regular messages are handled by the default thread pool.

dukehoops wrote:

> I am rather new to JGroups and have minimal knowledge of net protocols, so
> pardon the naivete.  Nevertheless, I'd like to right-size both thread_pool
> and oob_thread_pool for the config below, but have a difficult time figuring
> out appropriate values because I don't know which of the two pools is used
> by each of the protocols in the stack. Could someone please go through this
> stack and mark each as regular or OOB? For brevity the stack is (bottom to
> up):
>
> TCP
> TCPPING
> FD_SOCK
> FD
> VERIFY_SUSPECT
> NAKACK
> UNICAST
> STABLE
> VIEW_SYNC
> GMS
> FC
> FRAG2
> STATE_TRANSFER
> FLUSH
>
> thanks!
>
> <config>
>     <TCP
>        singleton_name="tcp"
>        
>        bind_port="7800"
>        port_range="10"
>        loopback="false"
>        recv_buf_size="10000000"
>        send_buf_size="640000"
>        discard_incompatible_packets="true"
>        max_bundle_size="64000"
>        max_bundle_timeout="10"      
>        enable_bundling="true"
>        use_send_queues="false"
>        sock_conn_timeout="300"
>        skip_suspected_members="true"      
>
>        thread_pool.enabled="true"
>        thread_pool.min_threads="2"
>        thread_pool.max_threads="5"
>        thread_pool.keep_alive_time="60000"
>        thread_pool.queue_enabled="false"
>        thread_pool.queue_max_size="1000"
>        thread_pool.rejection_policy="run"
>
>        oob_thread_pool.enabled="true"
>        oob_thread_pool.min_threads="1"
>        oob_thread_pool.max_threads="3"
>        oob_thread_pool.keep_alive_time="60000"
>        oob_thread_pool.queue_enabled="false"
>        oob_thread_pool.queue_max_size="500"
>        oob_thread_pool.rejection_policy="run"/>
>     />
>    
>     <TCPPING
>         timeout="3000"
>         initial_hosts="${jgroups.tcpping.initial_hosts:localhost[7800]}"
>         port_range="2"
>         num_initial_members="1"
>     />
>
>     <!-- run by coordinator only -->
>     <MERGE2 max_interval="10000" min_interval="5000"/>
>    
>     <FD_SOCK/>
>
>     <FD timeout="10000" max_tries="3" shun="true" />
>     <VERIFY_SUSPECT timeout="1500"/>
>     <pbcast.NAKACK
>         use_mcast_xmit="false" gc_lag="10"
>    retransmit_timeout="100,300,900,1200"
>    discard_delivered_msgs="true"/>
>     <UNICAST timeout="100,300,900"/>
>     <pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000"
> max_bytes="400000"/>
>     <VIEW_SYNC avg_send_interval="10000"/>
>     <pbcast.GMS
>         print_local_addr="true" join_timeout="3000"
>         shun="true"  view_bundling="true"/>
>     <FC max_credits="2000000" min_threshold="0.10"/>
>     <FRAG2 frag_size="60000"/>
>     <pbcast.STATE_TRANSFER/> <!-- needed for ReplicatedHashMap -->
>
>     <pbcast.FLUSH/>
> </config>
>
> -----
> ----------------
> Nikita Tovstoles
> vside.com
> ----------------
>
>  

--
Bela Ban
Lead JGroups / Clustering Team
JBoss (by Red Hat)



------------------------------------------------------------------------------
_______________________________________________
javagroups-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/javagroups-users