Dear Hildegard, 

I wrote:

>Note that the AJP connection pool is used per child (and per tomcat backend 
>definition if you're using more than one). You
>use connection_pool_minsize=1.  Please also note, that the spare threads will 
>no gather to the lowest possible number of
>childs. May this facts explain the "remaining idle" AJP connections?

You can get a good picture of what's up if you watch the scoreboard of the 
Apache server status page (mod_status) with the option refresh=1

As an example on one of my Apache frontends I'm using 16 children with 64 
threads. And a minimum pool of 128  (= 2*64), i.e. there may be 6 connections 
keep to each Tomcat after first usage of any thread in a newborn child as long 
as the child is alive.

The actual scoreboard of an more or less busy of my Apache looks like

        ................................................................
        _KC_KKKKKKKKR___WK___K_K_KK_RRR__K_C_K__KK_K______K_K__KRKK_KR__
        K_WKRR_KRK_KCK_KCR_K__RK_KK_W_KKW__K__KK___KRRK_RKW_WKR_KK_RKR_K
        __KK_RWRRK_CC__KW_KKRRKKK___KKKKK____KW_KKR_RK_R__KW__KCKCK___R_
        K_K_KKRKR_CR__KR_K_K__K__KR_K___KK__KK__WK__KK_K_KRK_KKR__KRK__K
        _RK__R_K_CR__K__K__K__KKK__K_KKKRK____W_K_RK_RKK_KK___RKRK_KRKKK
        R_R__R_KKK_KW_R_____RKKKKRW__RKK_K_CKK__KC___KKKKKRKKKC__R__KR_K
        R____CKRWKKKK_KR_K_K___KK_R_K_K___K_R______RK_KRK__K_K_KRRK___RK
        ................................................................
        ___KK_R__K___RWK_R_K_KK_K_K_KKK____RKK_K______KRRKKR_RRRR__KKK_R
        ................................................................
        KK__RRKKRRKK_K_K____KK_K__KRKKKRK___RK_KKK_KKKK____R_KWRK_K_KC_K
        K_KC_RK__KRKK___RKKR___KK_KR_KK__KK_KKK_WKKK__KRK__K__K_RKKKKKKK
        ................................................................
        ................................................................
        ................................................................

and the same for a much more lazy one

        K____K______KK_K_KKK__K__________K__K___________K__K__W_KK__KKKK
        ___KW_K___K__K__KK___KK__K__K_KK_K____K______KK____W_W__K_____K_
        ................................................................
        K_K__K____K____KK__K___K_K__K__K______K__K_K_________W_____KK___
        ___KKK_____K_____________________K_K___K__KK__K__________K______
        K_W________K____KK_____K__K__K_______K___K______K________K______
        ................................................................
        ................................................................
        ................................................................
        ................................................................
        ................................................................
        ................................................................
        ................................................................
        ................................................................
        ................................................................
        ................................................................

where '_' represents an idle thread but a line of '.' a closed child.

Guido

Reply via email to