ApacheFrontend减慢了上传速度

ApacheFrontend减慢了上传速度,apache,tomcat,file-upload,load-balancing,mod-jk,Apache,Tomcat,File Upload,Load Balancing,Mod Jk,以下是我的设置。我有一个apache服务器和mod_jk模块,用于负载平衡2台启用粘性会话的tomcat服务器。直接上传到每个tomcat的文件比通过apache上传要快得多。我们发现MPM模块会对大线程产生一些影响。所以我们也在使用它。现在只有一个线程和一个大文件,这比直接访问tomcat服务器要慢得多。[00:33 vs 4:30] Apache版本2.4.3 Mod_jk版本1.2.15 雄猫6 httpd.conf 请帮忙!!!我错过了一些重要的设置吗?请告诉我我们对缓慢的apache文

以下是我的设置。我有一个apache服务器和mod_jk模块,用于负载平衡2台启用粘性会话的tomcat服务器。直接上传到每个tomcat的文件比通过apache上传要快得多。我们发现MPM模块会对大线程产生一些影响。所以我们也在使用它。现在只有一个线程和一个大文件,这比直接访问tomcat服务器要慢得多。[00:33 vs 4:30]

Apache版本2.4.3 Mod_jk版本1.2.15 雄猫6

httpd.conf
请帮忙!!!我错过了一些重要的设置吗?请告诉我

我们对缓慢的apache文件上载操作进行了进一步调试,并获得了缓慢的根本原因,如下所述:

我们使用mod_jk连接器与tomcat服务器进行apache对话,但它有两个问题:

  • 默认情况下,Mod_jk connectors日志级别设置为debug,这使得所有上传的数据字节也写入jk.log文件,因此导致速度变慢,在更正后,时间降至1分30秒,而我们最初观察到的时间为4分30秒。更好,但还不够
  • 在进一步调试后,我们发现mod_jk背后的连接器协议,即AJP具有64 KB的最大数据包大小的固有限制,这低于在测试设置中看到配置后服务器端16 MB的消耗量。所以mod_jk侧的管道很窄,因此影响了端到端上传速度
  • 在此之后,我们使用http连接器(via)和负载平衡器(via)进行了一些测试,并取得了优异的结果

    LoadModule jk_module modules/mod_jk.so
    
    JkWorkersFile          conf/workers.properties
    JkLogFile              logs/jk.log
    JkLogLevel             debug
    
    JkMount                /*            router
    JkMount                /jk_status    status
    
    <Location /server-status>
    SetHandler server-status
    Allow from 192.168.188.143
    </Location>
    
    <IfModule unixd_module>
    User daemon
    Group daemon
    </IfModule>
    
    worker.list=router,status
    
    worker.worker1.port=8009
    worker.worker1.host=192.168.188.128
    worker.worker1.type=ajp13
    worker.worker1.lbfactor=1
    worker.worker1.sticky_session=1
    
    worker.worker2.port=8009
    worker.worker2.host=192.168.188.129
    worker.worker2.type=ajp13
    worker.worker2.lbfactor=1
    worker.worker2.sticky_session=1
    
    worker.router.type=lb
    worker.router.balanced_workers=worker1,worker2
    
    worker.status.type=status