Pregunta ¿Cuál es la diferencia entre Load Balancer y Reverse Proxy?


No tengo claro la diferencia entre Load Balancer y Reverse Proxy. Ambos parecen tener el mismo comportamiento: distribuir las solicitudes entrantes a los servidores backend.


104
2018-03-28 08:46


origen




Respuestas:


Tu confusión es razonable, a menudo son la misma cosa. Pero no siempre. Cuando se refiere a un equilibrador de carga, se refiere a una cosa muy específica: un servidor o dispositivo que equilibra las solicitudes entrantes en dos o más servidores web para distribuir la carga. Un proxy inverso, sin embargo, normalmente tiene varias características:

  1. equilibrio de carga: como se discutió anteriormente

  2. almacenamiento en caché: puede almacenar en caché el contenido de los servidores web detrás de él y, por lo tanto, reducir la carga en los servidores web y devolver algo de contenido estático al solicitante sin tener que obtener los datos de los servidores web

  3. seguridad: puede proteger los servidores web impidiendo el acceso directo desde Internet; puede hacer esto por medios simples simplemente ofuscando el (los) servidor (es) web o puede tener algunos componentes más activos que realmente revisan las solicitudes entrantes en busca de códigos maliciosos

  4. Aceleración SSL: cuando se usa SSL; puede servir como punto de terminación para esas sesiones SSL para que la carga de trabajo de tratar con el cifrado se descargue de los servidores web

Creo que esto cubre la mayor parte, pero es probable que haya algunas otras características que me he perdido. Ciertamente, no es infrecuente ver un dispositivo o pieza de software comercializado como un equilibrador de carga / proxy inverso porque las características se suelen agrupar juntas.


100
2018-03-28 09:04



+ agrupación de conexiones (permitir múltiples solicitudes en una conexión de frontend cuando el backend no lo maneja bien, o reutilizar la conexión de backend para múltiples conexiones de frontend) - kubanczyk


Además, un proxy inverso es específico de los servidores web.

Sin embargo, los balanceadores de carga pueden lidiar con muchos otros protocolos. Si bien la web (HTTP) es la gran idea en la actualidad, cosas como DNS, correo (SMTP, IMAP), etc., también se pueden equilibrar en la carga. Es justo hoy en día cuando la mayoría de la gente piensa que "Internet" o "red IP" piensan en la web. Hay un montón de cosas más por ahí que pueden ser más oscuras, o más de un nicho.


23
2018-03-28 17:55





Si bien el resultado neto (la distribución de solicitudes entre servidores) es el mismo entre varios equilibradores de carga y proxies inversos, la diferencia está en el método utilizado para distribuir las solicitudes.

Algunos balanceadores de carga equilibran el tráfico utilizando DNS, resolviendo el mismo nombre a diferentes IP en un round robin redirigiendo efectivamente las solicitudes. A menudo, esto puede ser útil cuando las solicitudes de equilibrio de carga entre centros de datos u otras ubicaciones físicas. Esta es una mala elección si necesita una conmutación por error "instantánea", ya que está a merced del servidor DNS de sus clientes para cumplir con el TTL que ha proporcionado. El GSS (Selector de sitio global) de Cisco es un buen ejemplo de equilibrio de carga basado en DNS.

Otros balanceadores de carga funcionan reescribiendo los encabezados de paquetes destinados a una IP virtual a la IP real de un servidor en una granja. Esto proporciona balanceo de carga en tiempo real y casi instantáneo conmutación por error. Un ejemplo de esto sería CSM de Cisco (módulo de cambio de contenido)

Tenga en cuenta que en los dos ejemplos anteriores, hay una conversación TCP entre el cliente y el servidor.

Un proxy inverso funciona aceptando la solicitud en nombre del servidor web, repitiendo esa solicitud al servidor web y devolviéndola al cliente, opcionalmente almacenando en caché los resultados en caso de que ocurra una solicitud similar.

Tenga en cuenta que el cliente nunca establece realmente una conexión al servidor web; más bien la conversación es estrictamente entre el proxy y el cliente.


12
2018-03-28 17:39





Un equilibrador de carga puede equilibrar el tráfico desde la capa 3 hasta la capa 7, pero un proxy inverso es específico de HTTP.


3
2017-11-02 08:49





UNA proxy inverso acepta una solicitud de un cliente, Lo reenvía a un servidor que puede cumplirlo.y devuelve la respuesta del servidor al cliente (lo que significa que un servidor detrás del proxy inverso puede comunicarse con características algo diferentes de un protocolo o un protocolo diferente).

UNA equilibrador de carga  distribuye las solicitudes de clientes entrantes entre un grupo de servidores, en cada caso, devolviendo la respuesta del servidor seleccionado al cliente apropiado.


3
2017-09-23 07:30



Entonces, ¿quiere decir que un equilibrador de carga es esencial como un 'proxy inverso' con distribución? - Anthony Kong
Esta es una duplicación directa de nginx.com/resources/glossary/reverse-proxy-vs-load-balancer o bien robaron tu respuesta o deberías hacer referencia a tus fuentes - icc97