Назад | Перейти на главную страницу

Зачем мне использовать Squid?

Я погуглил, искал StackOverflow и здесь. До сих пор я не могу полностью понять, что и зачем кому-то использовать Squid.

Все, что я могу выяснить на данный момент, это то, что это какой-то кеш, который может уменьшить нагрузку на ваш сервер (например, Apache). Так может кто-нибудь уточнить, что именно делает Squid, и, что более важно, зачем мне использовать Squid?

У меня есть большая социальная сеть, поэтому, возможно, это будет полезно для обслуживания изображений или чего-то еще, в настоящее время я запускаю lighttpd отдельно от Apache, только для обслуживания изображений.

Squid - это веб-кеш, который кэширует веб-контент и быстро возвращает его по запросу. Обработка запроса через squid часто происходит быстрее, чем на универсальном веб-сервере, даже для простых файлов (например, изображений), но он действительно подходит для кеширования страниц, которые генерируются динамически, что может быть дорогостоящим и медленным. Таким образом, он позволяет вам создавать ваши страницы динамически, но позволяет вам быстро предоставлять статическую кэшированную копию запрашивающим. Существует множество вариантов настройки того, как долго он кэшируется, какие страницы кэшируются и как сделать недействительным кешированный результат.

Например, Википедия использует кеши (squid и другие) в качестве ускорителя содержимого, так что каждое попадание на страницу не заставляет ее регенерировать из базы данных через большое количество PHP. При изменении страниц запись в кэше становится недействительной.

Его исходный код открыт и даже работает с Windows.

Я также хотел бы добавить, что это не только веб-кеш. В файле squid.conf есть множество опций. Мы запускаем его как веб-фильтр (используя бесплатные черные списки) и даже используем его для блокировки портов на нескольких машинах.

Помимо всех ответов здесь, Squid также можно использовать для фильтрации контента, предоставляемого конечному пользователю. Например, вы можете запретить несовершеннолетним просматривать сайты для взрослых.

Squid также может сканировать загруженные файлы на наличие вирусов.

Да, это действительно мощно.

Как указал Морвен, используя Squid в качестве Обратный прокси может ускорить доставку страниц за счет кеширования страниц, которые должны динамически создаваться веб-сервером, но в действительности изменяться редко.

Просто как дополнение, насколько я знаю, это не основная цель Squids и NGINX может быть лучшим решением, поскольку это должно быть самое быстрое решение для обратного прокси. Вы можете также изучить это.

Если вы хотите, чтобы обратный прокси-сервер ускорял веб-трафик за счет кэширования изображений и медленно генерируемых страниц, вы можете посмотреть Лак вместо Squid. Он разработан для работы с обратным прокси, молниеносно быстр и довольно прост в настройке. Squid больше спроектирован как прямой прокси, чем как обратный прокси. Если у вас есть большая социальная сеть, вы можете рассмотреть возможность использования CDN для изображений и статического контента. Интернет -> CDN -> Varnish -> Кластер Apache. Varnish можно также использовать в качестве балансировщика нагрузки, поскольку он может проверять работоспособность узла.

Я не использовал Squid в качестве обратного прокси, однако я использовал Pount и HAProxy (одновременно), и это была отличная система, мы использовали ее для балансировки нагрузки и высокой доступности и не использовали аспект кеширования. из них.

Дайте мне знать, если вам нужна дополнительная информация о настройке.

Squid обычно используется для кэширования контента из внешнего мира в сеть вашей компании.

Вы бы не использовали его в сценариях хостинга или доставки контента.