В чем разница между Load Balancer и Reverse Proxy?

Я не понимаю разницу между Load Balancer и Reverse Proxy. Они оба имеют одинаковое поведение: распределение входящих запросов на серверные серверы.

100 голосов | спросил Morgan Cheng 28 MarpmSun, 28 Mar 2010 12:46:37 +04002010-03-28T12:46:37+04:0012 2010, 12:46:37

5 ответов


98

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

  1. балансировка нагрузки: как обсуждалось выше

  2. кэширование: он может кэшировать содержимое с веб-сервера (ов) за ним и тем самым уменьшать нагрузку на веб-сервер (ы) и возвращать статический контент обратно запрашивающему без необходимости получать данные из веб-сервер (ы)

  3. безопасность: он может защитить веб-сервер (ы), предотвращая прямой доступ из Интернета; он может сделать это с помощью простых средств, просто запутывая веб-сервер (ы), или он может иметь несколько активных компонентов, которые фактически просматривают входящие запросы, ищущие вредоносный код.

  4. SSL-ускорение: при использовании SSL; он может служить точкой завершения для этих сеансов SSL, чтобы рабочая нагрузка на обработку шифрования была выгружена с веб-сервера (ов)

Я думаю, что это охватывает большинство из них, но, вероятно, есть несколько других функций, которые я пропустил. Разумеется, нет ничего необычного в том, что устройство или часть программного обеспечения продаются как балансировщик нагрузки /обратный прокси-сервер, потому что эти функции обычно объединяются вместе.

ответил icky3000 28 MarpmSun, 28 Mar 2010 13:04:21 +04002010-03-28T13:04:21+04:0001 2010, 13:04:21
23

Кроме того, обратный прокси-сервер относится к веб-серверам.

Балансиры нагрузки, однако, могут иметь дело с множеством других протоколов. Хотя в настоящее время веб-сайт (HTTP) является большой идеей, такие вещи, как DNS, почта (SMTP, IMAP) и т. Д., Могут быть также сбалансированы по нагрузке. Это просто сейчас, когда большинство людей думают, что «Интернет» или «IP-сеть» они думают о сети. Там есть куча больше вещей, которые могут быть более неясными или более нишевыми.

ответил 28 MarpmSun, 28 Mar 2010 21:55:42 +04002010-03-28T21:55:42+04:0009 2010, 21:55:42
12

В то время как чистый результат (распределение запросов между серверами) одинаковый между различными балансировщиками нагрузки и обратными прокси, разница заключается в методе, используемом для распространения запросов.

Некоторые балансировочные балансы балансируют трафик с использованием DNS, разрешая одно и то же имя различным IP-адресам в циклическом роутинге, эффективно перенаправляя запросы. Это часто может быть полезно при запросах балансировки нагрузки между центрами обработки данных или другими физическими местоположениями. Это плохой выбор, если вам нужно «мгновенное» сбой, так как вы находитесь на милости своего DNS-сервера своих клиентов, чтобы почтить TTL, который вы предоставили. Cisco GSS (Global Site Selector) является хорошим примером балансировки нагрузки на основе DNS.

Другие балансировки нагрузки работают путем повторной записи заголовков пакетов, предназначенных для виртуального IP, для реального IP-адреса сервера в ферме. Это обеспечивает балансировку нагрузки в реальном времени и почти мгновенный сбой. Примером этого может служить CSM Cisco (Content Switching Module)

Обратите внимание, что в обоих вышеприведенных примерах существует TCP-разговор между клиентом и сервером.

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

Обратите внимание, что клиент никогда не устанавливает соединение с веб-сервером; скорее разговор строго между прокси и клиентом.

ответил Brian Tillman 28 MarpmSun, 28 Mar 2010 21:39:04 +04002010-03-28T21:39:04+04:0009 2010, 21:39:04
3

Балансировщик нагрузки может балансировать трафик от уровня 3 вверх до уровня 7, но обратный прокси-сервер является специфичным для HTTP.

ответил Kris Roofe 2 32016vEurope/Moscow11bEurope/MoscowWed, 02 Nov 2016 11:49:47 +0300 2016, 11:49:47
3

A обратный прокси принимает запрос от клиента, перенаправляет его на сервер, который может выполнить его , и возвращает ответ сервера клиенту (который означает, что сервер за обратным прокси-сервером может обмениваться несколькими различными функциями протокола или другого протокола).

A балансировка нагрузки распределяет входящие клиентские запросы среди группы серверов, в каждом случае возвращает ответ от выбранного сервера на соответствующий клиент.

ответил Manu Prasadh 23 rdEurope/Moscowp30Europe/Moscow09bEurope/MoscowFri, 23 Sep 2016 10:30:43 +0300 2016, 10:30:43

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132