Чем веб-ускоритель отличается от простого веб-сервера или CDN?

Я читал статью о конфигурациях веб-приложений и натолкнулся на концепцию веб-ускорителя, но, читая список функций, кажется, он предоставляет довольно много функций, которые я бы попросил в CDN или даже в некоторых конфигурациях веб-сервера.

Веб-ускоритель - это прокси-сервер, который сокращает время доступа к веб-сайту.

Это обеспечивает:

  1. кэшируйте недавно или часто используемые документы, чтобы они могли быть отправлены клиенту с меньшей задержкой или с более высокой скоростью передачи, чем удаленный сервер.
  2. Освежить объекты в кэше, гарантируя, что часто доступный контент легко доступен для отображения.
  3. упреждающее разрешение имен хостов, присутствующих в документе (HTML или JavaScript), для уменьшения задержки. Предварительная загрузка документов, которые, вероятно, будут доступны в ближайшем будущем. сжать документы до меньшего размера, например, уменьшив качество изображений или отправив только то, что изменилось с момента последнего запроса документа.
  4. оптимизировать код из определенных документов (таких как HTML или JavaScript).
  5. отфильтровывать рекламу и другие нежелательные объекты, чтобы они вообще не отправлялись клиенту.
  6. поддерживать постоянные TCP-соединения между клиентом и прокси-сервером.
  7. повысить производительность за счет ускорений на уровне протокола, таких как ускорение TCP.

Теперь, если вы спросите меня, я смотрю на следующие компоненты, а также даю им вышеуказанные обязанности:

CDN: (1) (2)

Балансировщик нагрузки: (5)(7)

Обратный прокси: (1)(2)(4)(6)(7)

Хотя я мог бы не совсем правильно классифицировать вышеупомянутое распределение ответственности, похоже, что веб-ускорителем может быть CDN, LB или даже обратный прокси.

Может ли кто-нибудь указать мне на уникальность такого компонента и лучшие варианты использования? И как веб-ускоритель подходит для модели с CDN, LB и / или обратным прокси?

2 ответа

Решение

Вы правы: веб-ускоритель - это концептуальная технология, которую можно использовать как автономную, как часть коммерческого CDN, как часть собственного CDN, так и даже часть клиентской установки.

Не существует единственной верной реализации веб-ускорителя, это категория технологий. Примерами являются сжатие / распаковка "на лету", HTTP-кэши, которые ближе к пользователю, чем исходный сервер и сокращающие или исключающие время обработки, и некоторые другие.

CDNs будут использовать несколько примеров этих технологий, чтобы объединить то, что они считают правильным видом веб-ускорения, которое они могут продать своим клиентам.

Веб-ускоритель может быть CDN, но очень тривиальным.

Определение CDN в Википедии:

большая распределенная система серверов, развернутая в нескольких центрах обработки данных через Интернет

Хотя веб-ускоритель определяется как:

(один) прокси-сервер, который сокращает время доступа к веб-сайту

CDN - это действительно сеть, основной функцией которой является оптимизация доступа к очень интересному контенту, обычно на службе очень крупных компаний. Это достигается путем:

  1. Несколько локализованных центров обработки данных по всему миру сокращают время передачи сообщений
  2. Разделение нагрузки уменьшает заторы
  3. Для обслуживания веб-сайта, который сталкивается с неожиданным пиком запросов (или атакой отказа в обслуживании), может быть задействовано больше центров обработки данных.

Каждый сервер в CDN фактически является веб-ускорителем, а сеть CDN содержит логику, обеспечивающую актуальность всего контента на всех серверах. CDN можно рассматривать как лес веб-ускорителей.

Одним из самых известных CDN является Akamai, с огромным списком клиентов, в который входят Adobe, Apple, IBM Corp., Microsoft, Yahoo! и больше. Его клиенты всегда сопротивлялись всем попыткам атак типа "отказ в обслуживании" из-за его огромной всемирной сети.

Другие вопросы по тегам