正向代理与反向代理(以及负载均衡与反向代理的区别)
一、正向代理与反向代理
核心区别:
正向代理:代理对象【客户端】,隐藏客户端。
反向代理:代理对象【服务器 】,隐藏服务器。
正向代理
client想访问server网站,但是不知道在哪,proxy知道在哪。于是client找到proxy去访问server。全程server只知道proxy访问了它,而不知道client是谁,所以proxy代理的是客户端client。
用途:
- 作为缓存服务器
- 代理权限:自己没有权限去的地方,可以访问代理,代理有权限
- 隐藏客户端
反向代理
client想访问网站,它知道proxy上面能访问到。于是client去访问proxy,但实际上是proxy默默的访问了server拿到的数据返回给了client。全程client只知道它访问了proxy,而不知道究竟最终访问了谁,所以proxy代理的是服务端server。
用途:
- 隐藏真实服务器
- 作为缓存服务器
- 实现负载均衡
二、反向代理与负载均衡区别
- 反向代理是实现负载均衡的一种方式,但负载均衡不一定要通过反向代理来实现
- 反向代理也不一定要实现负载均衡,它可以在服务器与客户端之间作为一个缓存