Java Nginx:(一)Nginx 介绍与代理原理

1.Nginx 简介

  • Nginx (engine x) 是一个高性能的 HTTP 和反向代理服务。Nginx 是由伊戈尔·赛索耶夫为俄罗斯访问量第二的 Rambler.ru 站点(俄文:Рамблер)开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。
  • Nginx 是一个很强大的高性能 Web 和反向代理服务,它具有很多非常优越的特性:在连接高并发的情况下,Nginx 是 Apache 服务不错的替代品:Nginx 在美国是做虚拟主机生意的老板们经常选择的软件平台之一。

2.Nginx 作用

  • http 协议代理
  • 搭建虚拟主机
  • 服务的反向代理
  • 在反向代理中配置集群的负载均衡

3.代理方式

1.正向代理

  • 正向代理,意思是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端才能使用正向代理。
    Java Nginx:(一)Nginx 介绍与代理原理

2.反向代理

  • 反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
    Java Nginx:(一)Nginx 介绍与代理原理

3.二者之间的区别

位置不同 :

  • 正向代理,架设在客户机和目标主机之间;
  • 反向代理,架设在服务器端;

代理对象不同:

  • 正向代理,代理客户端,服务端不知道实际发起请求的客户端;
  • 反向代理,代理服务端,客户端不知道实际提供服务的服务端;

4.小小心得

  • 正向代理:是代理大家的计算机,就像加速器
  • 反向代理是代理的服务器,随便什么人去访问被代理的服务器都是由代理服务器来接收分配。