一、nginx简介

1、什么是nginx和它可以做什么?

  • Nginx是高性能的 HTTP 和 反向代理 的web服务器,处理高并发能力是十分强大的,能经受高负载的考验,有报告表明能支持高达50,000个并发连接数。
  • 其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

2、Nginx作用?

  • Nginx可以作为静态页面的web服务器,同时还支持 CGL 协议的动态语言,比如 perl、php等。但是不支持java。Java程序只能通过于tomcat配合完成。Nginx专为性能优化而开发,性能是其最重要的考量,实现上非常注重效率,能经受高负载的考验。

3、正向代理

Nginx不仅可以做反向代理,实现 负载均衡。还能用正向代理来进行上网等功能。
正向代理:如果把局域网外的 Internet想象成一个巨大的资源库,则局域网中的客户端要访问Internet,则需要通过代理服务器来访问,这种代理服务就称为正向代理。
正向代理:客户端是清楚目标服务器的地址的,而目标服务器是不清楚来自客户端,它只知道是来自哪个代理服务器,所以代理服务器可以屏蔽或隐藏客户端信息。

  • 正向代理:通过代理服务器来访问Internet的过程 就叫 正向代理。
  • 需要再客户端配置代理服务器进行指定网站访问。

4、反向代理

  • 反向代理,其实客户端对代理是无感知的,因为客户端不需要任何配置就可以访问。
  • 我们只 需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,再返回客户端。此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器IP地址。

反向代理:从上面的正向代理,你会大概知道代理服务器是为客户端作代理人,它是站在客户端这边的。其实反向代理就是代理服务器为服务器作代理人,站在服务器这边,它就是对外屏蔽了服务器的信息,常用的场景就是多台服务器分布式部署,像一些大的网站,由于访问人数很多,就需要多台服务器来解决人数多的问题,这时这些服务器就由一个反向代理服务器来代理,客户端发来请求,先由反向代理服务器,然后按一定的规则分发到明确的服务器,而客户端不知道是哪台服务器。常常用nginx来作反向代理。