Nginx简介

一、什么是Nginx?

  Nginx是一款高性能的http服务器(能访问图片静态资源)/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。官方测试nginx能够支撑5万并发链接,并且cpu、内存等资源消耗非常低,运行非常稳定。

二、能够用在什么地方?

  1、http服务器。Nginx是一个http服务器,可以独立的提供http服务,可以做静态网页。

  2、虚拟主机。可以实现一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机。

  3、反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群,此时可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。

三、涉及到的一些概念。

  1、代理服务器。是一种重要的服务器安全功能,它主要工作在开放系统互联(OSI)模型的会话层,从而起到防火墙的作用。代理服务器大多被用来连接INTERNET(国际互联网)和Local Area Network(局域网)。

  2、反向代理(reverse proxy)。指以代理服务器来接受Interner上的连接请求,然后将请求转发给内部网络上的服务器;并将得到的结果返回给Internat上请求连接的客户端,此时代理服务器对外就表现为一个服务器。当一个代理服务器能够代理外部网络上的主机,访问内部网络时,这种代理服务方式称为反向代理服务。

             用户A向服务器发送请求,由反向代理服务器接受,反向代理服务器Z接收请求后,判断向哪里(原始资源服务器B)转交请求,接收原始资源服务器B响应的内容内容,然后返回给用户A。整个过程中,用户端都以为自己访问的是原始资源服务器B而不是反向代理服务器Z。由防火墙和反向代理服务器共同保护了原始资源服务器。

  3、正向代理服务器。只用于代理内部网络对Internet的连接请求,客户机必须指定代理服务器,并将本来要发送给Web服务器上的http请求发送到代理服务器中。

    一个位于客户端A和原始服务器(服务器B)之间的服务器(代理服务器Z),为了从原始服务器取得内容,用户A向代理服务器Z发送一个请求并指定目标(服务器B),然后代理服务器Z向服务器B转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。

四、Nginx的优点。 

  1、作为Web服务器,Nginx处理静态文件、索引文件,自动索引的效率非常高

  2、作为代理服务器,Nginx可以实现无缓存的反向代理加速,提高网站运行速度

  3、作为负载均衡服务器,Nginx既可以在内部直接支持RailsPHP,也可以支持HTTP代理服务器对外进行服务,同时还支持简单的容错和利用算法进行负载均衡

  4、在性能方面,Nginx是专门为性能优化而开发的,实现上非常注重效率。它采用内核Poll模型,可以支持更多的并发连接,最大可以支持对5万个并发连接数的响应,而且只占用很低的内存资源

  5、在稳定性方面,Nginx采取了分阶段资源分配技术,使得CPU与内存的占用率非常低。Nginx官方表示,Nginx保持1万个没有活动的连接,而这些连接只占用2.5MB内存,因此,类似DOS这样的攻击对Nginx来说基本上是没有任何作用的

  6、在高可用性方面,Nginx支持热部署,启动速度特别迅速,因此可以在不间断服务的情况下,对软件版本或者配置进行升级,即使运行数月也无需重新启动,几乎可以做到7x24小时不间断地运行

参考:

 1、 https://blog.csdn.net/liutengteng130/article/details/46700939

原文地址:https://www.cnblogs.com/xiaoxli/p/9426477.html