• Nginx系列(一)--nginx是什么?


    一、介绍

            Nginx是一个高性能的HTTP和反向代理server,也是一个IMAP/POP3/SMTP代理server。

             Nginx是一款轻量级的Webserver/反向代理server以及电子邮件代理server。并在一个BSD-like协议下发行。由俄罗斯的程序设计师lgor Sysoev所开发,供俄国大型的入口站点及搜索引擎Rambler使用。

    其特点是占有内存少。并发能力强。其实nginx的并发能力确实在同类型的网页server中表现较好。

     

              Nginx相较于Apachelighttpd具有占有内存少。稳定性高等优势,而且依靠并发能力强。丰富的模块库以及友好灵活的配置而闻名。

    Linux操作系统下。nginx使用epoll事件模型,得益于此。nginxLinux操作系统下效率相当高。同一时候NginxOpenBSDFreeBSD操作系统上採用类似于Epoll的高效事件模型kqueue.

     

    二、名词解释

    代理server

    通常是指局域网内部的机器通过代理server发送请求到互联网上的server,代理server一般作用在client。

     

    反向代理

                client(用户A)向反向代理的命名空间(name-space)中的内容发送普通请求,接着反向代理将推断向何处(原始server)转交请求,并将获得的内容返回给client。而client始终任务它訪问的事原始serverB而不是serverZ

    因为防火墙作用。仅仅同意serverZ进出,防火墙和反向代理共同作用保护了院子资源serverB


             用途:将防火墙后面的server提供给Internet用户訪问。反向代理还能够为后端的多台server提供负载平衡或为后端较慢的server提供缓冲服务。

     

    正向代理

             正向代理是一个位于clientA和原始server(serverB)之间的server(代理serverZ),为了从原始server取得内容,用户A向代理serverZ发送一个请求并指定目标(serverB)。然后代理serverZ向serverB转交请求并将获得的内容返回给client。client必需要进行一些特别的设置才干使用正向代理。


               用途:在防火墙内的局域网client提供訪问Internet的途径。还能够使用缓冲特性降低网络使用率。

     

    从安全性来讲:

            正向代理同意client通过它訪问随意站点而且隐藏client自身,因此你必须採取安全措施以确保仅为经过授权的client提供服务。

            反向代理对外都是透明的。訪问者并不知道自己訪问的是一个代理。

     

    三、Nginx VSApache

    同样点:

    1、都是HTTPserver软件

    2、功能上都採用模块化结构设计

    3、都支持通用的语言接口。如PHPPerlPython

    4、支持正向、反向代理、虚拟主机、URL重写、压缩传输、SSL加密传输

     

    不同点:

    1Apache处理速度非常慢。占用非常多内存资源

    2、功能上,Apache全部模块支持动静态编译,Nginx模块都是静态编译的

    3、对Fcgi的支持:Apache支持的非常不好,Nginx支持非常好

    4、处理连接方式:Nginx支持epoll,Apache不支持

    5、空间使用上:Nginx安装包仅几百K

     

     

    四、Nginx优势

    1、作为Webserver,Nginx处理静态文件、索引文件,自己主动索引的效率很高

    2、作为代理server,Nginx能够实现无缓存的反向代理加速,提高站点执行速度

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

    4、在性能方面,Nginx是专门为性能优化而开发的。实现上非常注重效率。

    它採用内核Poll模型。能够支持很多其它的并发连接。最大能够支持对5万个并发连接数的响应,并且仅仅占用非常低的内存资源

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

    6、在高可用性方面,Nginx支持热部署,启动速度特别迅速。因此能够在不间断服务的情况下。对软件版本号或者配置进行升级,即使执行数月也无需又一次启动,差点儿能够做到7x24小时不间断地执行

     

              

              Nginx具有非常高的稳定性;支持热部署。代码质量非常高。代码非常规范,手法成熟。模块扩展也非常easy;採用了一些os提供的最新特性如对sendfile(Linux2.2+),accept-filterFreeBSD4.1+,TCP_DEFER_ACCEPT(Linux 2.4+)的支持,从而大大提高了性能。

  • 相关阅读:
    初识《构建之法》
    实验十四 课程学习总结-韩艳艳(201671030109)
    201671030109 韩艳艳 《英文文本统计分析》结对项目报告
    201671030109 词频统计软件项目报告
    201671030109 韩艳艳 实验三作业互评与改进报告
    ----初读《构建之法》的疑虑
    201671030111 李蓉 实验十四 团队项目评审&课程学习总结
    201671030111李蓉《英文文本统计分析》结对项目报告
    201671030111 词频统计软件项目报告
    201671030111李蓉 实验三作业互评与改进报告
  • 原文地址:https://www.cnblogs.com/liguangsunls/p/7087095.html
Copyright © 2020-2023  润新知