代理服务器和普通服务器有什么区别?

Raj*_*mar 5 networking

服务器的责任是获取请求并对请求给出适当的响应.那么,代理服务器的责任是什么?服务器和代理服务器之间是否存在任何关系(即,如果服务器过载,那么代理服务器会假装像服务器一样)?如果不是这样,那么服务器过载时的解决方案是什么?

Ser*_*rge 6

代理服务器的职责是代表您联系服务器,请求操作并将响应传递给您.

例如,当不可能与服务器建立直接连接时,这是适用的.


man*_*oid 6

总的来说,谢尔格的回答是正确而简洁的,因此我对此做出了投票。

为了稍微扩展一下Serge的定义,因为您的问题是关于服务器之间的关系的,所以听起来您可能正在考虑一类称为反向代理的代理服务器。

首先,让我们快速定义正向和反向代理。一般而言,当使用“转发”代理时,客户端会了解目标服务器,并要求代理服务器将请求转发到该已知服务器。相反,当使用“反向”代理时,客户端不知道目标服务器是什么。设置反向代理是为了将请求无形地转发到后台服务器,该服务器负责实际工作,并且反向代理会传递响应。

由于多种原因,反向代理非常常用:

  1. 隐藏可直接访问Internet的实际服务器可提高安全性。
  2. 您可以在代理服务器上“终止” SSL,这意味着在那时解密请求,因此Web服务器不必执行该计算量大的任务。
  3. 代理可以充当“负载平衡器”,在完成工作的服务器池之间分配请求,因此您的服务可以更好地扩展。
  4. 您可以在代理处缓存内容,从而大大加快了对重复请求的响应。
  5. 您可以非常快速地提供静态内容,但仍可以混入由应用程序服务器生成的动态生成的内容。

希望这可以澄清“服务器”和“代理服务器”之间的关系。