On 31.12.2013 18:44, frenchc44 wrote:
> Due to large payloads, we wanted to increase the max_packet size of the
> mod_jk/ajp layer in order to see if it will help with performance. However,
> it appears the max_packet_size for non- header requests is capped at 8192
> bytes despite the documentation stating that it should be 65536. I am using
> mod_jk version 1.2.31 
> 
> [Tue Dec 31 11:54:09 2013][12492:12640] [debug]
> ajp_connection_tcp_send_message::jk_ajp_common.c (1145): sending to ajp13
> pos=4 len=8192 max=16384
> 
> Here is some code from jk_ajp_common.c that sets the max size but appears to
> ignore the max_packet_size...
> 
> Line 1708:  if (ae->left_bytes_to_send > 0) {
>             int len = AJP13_MAX_SEND_BODY_SZ;
>             if (ae->left_bytes_to_send <
> (jk_uint64_t)AJP13_MAX_SEND_BODY_SZ) {
>                 len = (int)ae->left_bytes_to_send;
>             }
> 
> Any help would be much appreciated. 

That's quite possible. The original problem that was solved with
max_packet_size was big headers, because the AJP protocol needs to fit
all headers into one AJP packet. The problem arose when people were
using https and client certs and wanted to forward client cert details
from Apache to Tomcat. Then often 8KB were not enough.

Are you sure, that bigger AJP packets will be a significant win in your
situation? Request and response bodies are streamed, so there is no
obvious limitation and packets will be relayed as data comes in.

I'm willing to look into how easy it would be to making max_packet_size
work even for other packets (in combination with packetSize on the
Tomcat side), but would like to first understand better why you think it
would make a noticeable difference for you.

Regards,

Rainer


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to