На Windows я подключаю Apache2 к Tomcat7 через AJP.
Есть ли какая-нибудь конфигурация, которая может ограничить связь?
Это мои worker.properties
worker.list=node1
worker.node1.port=8009
worker.node1.host=127.0.0.1
worker.node1.type=ajp13
Это мой httpd.conf:
<VirtualHost 127.0.0.1:80>
JkMount /* node1
</VirtualHost>
Нам нужно протестировать индикаторы загрузки и асинхронный запрос в корпоративном приложении AJAX.
mod_bw делает не работать с JkMount.
Насколько мне известно, AJP ни на стороне Apache, ни на стороне Tomcat не выполняет регулировку, а вместо этого пытается передать запрос между уровнями так быстро, как это возможно.
Вот некоторые мысли:
Можно установить ограничения на количество подключений для рабочих, которые при достижении приводят к тому, что рабочий не принимает больше подключений, чтобы избежать насыщения и перегрузки.
Можно ввести больше серверных хостов и распределить между ними работников, чтобы увеличить пропускную способность.
Например, можно ограничить пропускную способность в Tomcat с помощью настраиваемых фильтров, которые могут быть решением для кодирования.
Можно использовать http-коннектор вместо AJP, чтобы использовать сжатие вариант и, возможно, увеличить пропускную способность по тем же соединениям.
Можно ввести управление пропускной способностью на уровне сети, чтобы ограничить пропускную способность AJP-соединения «извне». В Linux это можно сделать изначально с помощью iptables. - предел и - предел-взрыв директивы. Насколько мне известно, в Windows отсутствует собственное решение для регулирования полосы пропускания на уровне сети. К счастью, существуют сторонние надстройки, которые обеспечивают детальный контроль пропускной способности, такие как Netlimiter и Netbalancer.
Если смотреть за пределы ОС, можно запускать соединения через устройство-ограничитель, такое как аппаратный балансировщик нагрузки, но тогда зачем вообще использовать AJP?
Однако важно то, что независимо от того, каким способом вам удастся выполнить регулирование, вы должны видеть, что и Apache, и Tomcat имеют возможность позволить своим очередям запросов / невыполненным журналам увеличиваться, поскольку можно представить, что количество сеансов увеличивается, если запросы выполняются медленнее.
Наконец, IIS имеет собственное регулирование полосы пропускания и может перезаписывать обратный прокси / URL через модуль ARR на серверную часть Tomcat. Я не уверен, доступно ли дросселирование для подключений ARR: ed, но если вы все равно используете Windows, возможно, стоит взглянуть.