У нас есть производственная установка, на которой мы
Squid спереди (кеширование изображений, js, css и т. Д.)
Apache httpd посередине (prefork + mod_rewrite + mod_jk / AJP + mod_deflate + mod_php (несколько страниц php))
Apache tomcat 5.5 в конце обслуживает все динамические вещи.
Как лучше всего снизить накладные расходы, связанные с наличием трех серверов на пути запроса?
Хотите знать, поможет ли замена httpd на более быстрый веб-сервер, например nginx / lighttpd. httpd прямо сейчас выполняет работу по переписыванию URL-адресов (для чистых URL-адресов) и общению с tomcat (через mod_jk), сжатию вывода (mod_deflate) и обслуживанию некоторых php-страниц с низким трафиком. Что было бы идеальной заменой httpd, учитывая, что нам нужны эти функции?
Есть ли способ заменить (squid + apache) одним объектом, который хорошо кэширует (например, squid) для статического материала, переписывает URL-адрес, сжимает ответ и пересылает динамический материал непосредственно на tomcat? слышал abt varnish cache, интересно, может ли это помочь.
Оптимизация - это, так сказать, «черное» искусство. Есть много способов снять шкуру с кошки.
Вам необходимо определить узкие места, прежде чем решать, как что-то улучшить.
Хотя можно заменить все серверное программное обеспечение на альтернативные, это поможет, только если программное обеспечение было узким местом, а не что-то еще, например пропускная способность сети или пропускная способность ввода-вывода.
Вы можете начать с сравнительного анализа существующей настройки и настройки существующих настроек, чтобы увидеть, улучшают ли они ситуацию.