正向代理和反向代理的区别

所谓代理即在一组客户端和一组服务器之间充当中介的服务器。代理分为两种:正向代理(转发代理)反向代理

正向代理和反向代理是不同的:

正向代理

正向代理是一个被配置为代表客户端的服务器。客户端的请求转到代理处,而不是服务器处。代理再将请求转发给服务器,并等待响应,将其送回给客户端。

这样的话,服务器就不知道客户端是谁了。 它只知道代理的源IP地址。 因此,正向代理可以保护和隐藏客户端的身份。 VPN也遵循相同的工作原理。

使用正向代理,客户端可以访问他们本不应该访问的服务器。 但是使用正向代理在系统级别也有优势,因为它们可以:

  • 选择性的发送/阻止请求
  • 记录或监控请求
  • 缓存回复

反向代理

反向代理是配置为代表另一台服务器运行的服务器。 代理代替服务器接收客户端的请求。 代理将请求转发到服务器并等待将它们发送回给客户端的响应。

客户端不知道它正在与反向代理通信。 响应返回给客户端,似乎来自服务器本身。 因此反向代理可以保护和隐藏服务器的身份。

反向代理的主要优点有:

  • 为一组服务器做负载平衡
  • 服务器的匿名性和更高的安全性
  • 更好的性能,代替服务器执行额外的任务

例如,反向代理可以缓存静态内容,减少整体系统延迟。 或者它们可以减轻执行其他任务的服务器的负载,例如:

  • 数据压缩和解压缩
  • 数据加解密
  • HTTP 身份验证

在系统中引入反向代理也有缺点:

• 系统复杂性增加

• 冗余的反向代理对于避免单点故障是必要的

同样,是否在系统中使用反向代理层,这是一个权衡的问题。