大家好,今天小编关注到一个比较有意思的话题,就是关于虚拟主机反向代理的问题,于是小编就整理了2个相关介绍虚拟主机反向代理的解答,让我们一起看看吧。
正向代理和反向代理的区别?
1、正向和反向的用途不同
正向代理,为在防火墙内的局域网客户端提供访问Internet的途径;反向代理,将防火墙后面的服务器提供给Internet访问;
2、两者安全性能不同
正向代理允许客户端通过它访问任意网站并且隐藏客户端自身,因此必须采取安全措施以确保仅为授权的客户端提供服务;反向代理对外都是透明的,访问者并不知道自己访问的是哪一个代理。
3、两者代理对象不同
正向代理,代理客户端,服务端不知道实际发起请求的客户端;反向代理,代理服务端,客户端不知道实际提供服务的服务端;
4、两者应用场景不同
正向代理的应用场景如下:其一是访问原来无法访问的资源;其二是用作缓存,加速访问速度;其三是对客户端访问授权,上网进行认证;其四是代理可以记录用户访问记录(上网行为管理),对外隐藏用户信息。
反向代理的应用场景如下:第一是保护内网安全;第二是负载均衡;第三是用作缓存,减少服务器的压力;
5、正向代理和反向代理架构的位置不同
正向代理,架设在客户机和目标主机之间;反向代理,架设在服务器端;
此外正向代理和反向代理的另一个区别就是他们出发角度不一样,正向代理服务于特定用户;反向代理它是从服务端的角度出发,服务于非特定用户。
1、正向代理其实是客户端的代理,帮助客户端访问其无法访问的服务器资源。
反向代理则是服务器的代理,帮助服务器做负载均衡,安全防护等。
2、正向代理一般是客户端架设的,比如在自己的机器上安装一个代理软件。
而反向代理一般是服务器架设的,比如在自己的机器集群中部署一个反向代理服务器。
3、正向代理中,服务器不知道真正的客户端到底是谁,以为访问自己的就是真实的客户端。
而在反向代理中,客户端不知道真正的服务器是谁,以为自己访问的就是真实的服务器。
4、正向代理和反向代理的作用和目的不同。正向代理主要是用来解决访问限制问题。
而反向代理则是提供负载均衡、安全防护等作用。二者均能提高访问速度。
从用途上来讲:正向代理的典型用途是为在防火墙内的局域网客户端提供访问Internet的途径。正向代理还可以使用缓冲特性减少网络使用率。反向代理的典型用途是将防火墙后面的服务器提供给Internet用户访问。反向代理还可以为后端的多台服务器提供负载平衡,或为后端较慢的服务器提供缓冲服务。另外,反向代理还可以启用高级URL策略和管理技术,从而使处于不同web服务器系统的web页面同时存在于同一个URL空间下。
从安全性来讲:正向代理允许客户端通过它访问任意网站并且隐藏客户端自身,因此你必须采取安全措施以确保仅为经过授权的客户端提供服务。反向代理对外都是透明的,访问者并不知道自己访问的是一个代理。
用nginx这个反向代理服务器实现负载均衡,集群几台服务器,同时协作完成一个任务,这样的情景下就是分布式吗?
先说结论,可以利用Nginx的反向代理能力,集合几个负责不同功能的server节点,从而实现分布式;也可以利用Nginx的负载均衡能力,集合几个相同功能的server节点,从而实现服务的高稳定性。
目前Nginx已经逐渐成为平台服务必不可少的一环,就是因为它的反向代理与负载均衡能力满足了开发者对产品服务高可用性以及模块解耦的需求。
接下来我们分别来解释反向代理与负载均衡。
反向代理
反向代理是针对服务器端。对于用户来说,他只知道反向代理服务器的地址,但是反向代理服务器后面通常指向了多个服务器,负责了相同或者不同的模块。Nginx会根据conf文件中配置的正则表达式来解析用户实际请求的url path,然后再将请求转发至不同的服务器进行处理,最后再将请求结果返回给用户。这个过程就叫做反向代理,因此可以看做将不同的能力,不同的server整合到一个host和ip,从而减少用户的使用负担,也是对用户更加友好。
负载均衡
与反向代理相对应的是负载均衡。
我通过一个例子来解释,当一台服务器能够承受的qps只有2000,但是当前用户量激增,qps达到了3500,在不修改代码不优化的情况下如何解决呢。
我们可以再布置一台server,两台服务器一起处理请求,从整体上来看,qps就达到了4000。但是两台服务器有不同的ip,我们总不能在扩容后和用户说,你的第奇数个请求发到8080端口,第偶数个请求发送到8082吧。
如何处理这个问题呢?这就用到了负载均衡。
我们可以在Nginx的conf文件中为同一个类型的path配置指向两台服务器地址,这样对于用户来说,他依然只需要请求Nginx的地址即可,Nginx会根据当前两台服务器的情况决定将请求转发给哪一个。这样布置还有一个好处,就是如果其中一个节点宕机了,只要另一个节点还活着,从用户的角度,整个服务就还能够运转,因为Nginx会将请求转给有正常反馈的server。
我曾经尝试过,在两台服务器一样压力的情况下,请求是均匀分给两个不同的服务器的。
基于我相信大家已经对我说的“利用Nginx的反向代理能力,集合几个负责不同功能的server节点,从而实现分布式;也可以利用Nginx的负载均衡能力,集合几个相同功能的server节点,从而实现服务的高稳定性”有了进一步的了解了。
以上是我的浅见,欢迎大家在下方评论留言。
我是苏苏思量,来自BAT的Java开发工程师,每天分享科技类见闻,欢迎关注我,与我共同进步。
到此,以上就是小编对于虚拟主机反向代理的问题就介绍到这了,希望介绍关于虚拟主机反向代理的2点解答对大家有用。