Nginx 和 Apache 一样是 http 服务器软件。它们的区别是 Apache 的处理速度慢,占用内存资源, nginx 恰恰相反。在功能上 Apache 的所有模块都支持动和静态编译,而 nginx 模块全是静态编译 的! Apache 对 fastcgi 的支持不好,而 nginx 对 FastCGI 支持非常好!

Nginx 的优势

作为 web 服务器处理静态文件,索引文件,自动索引的效率非常高 作为代理服务器,可以实现无缓存的反向代理,提高网站运行速度 作为负载均衡服务器,可以在内部直接支持 Rails 和 PHP 等 性能方面,采用 epoll 模型,可以支持多并发并且占用低内存

稳定方面,采取分段资源分配技术,CPU 与内存占用率非常低类似 DOS 攻击对 nginx 基本无作用 高可用方面,支持热部署,启动迅速,可以在不间断服务的情况下,直接升级,7X24 小时不间断运 行

Nginx 的模块和工作原理

Nginx 由内核和模块组成。模块结构分为核心模块,基础模块,第三方模块

核心模块:http 模块,event 模块,mail 模块

基础模块:http FastCGI 模块,http proxy 模块,http rewrite 模块

第三方模块:http upstream request hash 模块,notice 模块,http access key 模块 模块从功能上分为如下三类:

Handlers(处理器模块):直接处理请求,并进行输出内容和修改 headers 信息操作,只有一个 Filters(过滤模块): 主要对其他处理器模块输出的内容进行修改操作,最后由 nginx 输出案例故障汇 总

Proxies(代理类模块):主要与后端一些服务比如 FastCGI 进行交互,实现代理和负载均衡 在工作方式上:

单工作进程(默认):除主进程外,还有一个工作进程 多工作进程:每个进程包含多个线程

Naginx 模块之间被编译进 Nginx,因此属于静态编译方式!然后将模块编译为一个 so 文件,在配 置文件中指定是否加载!

master 进程主要用来管理 worker 进程,具体包括如下 4 个主要功能:

(1)接收来自外界的信号。

(2)向各 worker 进程发送信号。

(3)监控 woker 进程的运行状态。

(4)当 woker 进程退出后(异常情况下),会自动重新启动新的 woker 进程。

woker 进程主要用来处理网络事件,各个 woker 进程之间是对等且相互独立的,它们同等竞 争来自客户端的请求,一个请求只可能在一个 woker 进程中处理,woker 进程个数一般设置为机器 CPU 核数。

Nginx 详细介绍的更多相关文章

  1. Nginx详细介绍

    1.Nginx是什么? Nginx就是反向代理服务器. 首先我们先来看看什么是代理服务器,代理服务器一般是指局域网内部的机器通过代理服务发送请求到互联网上的服务器,代理服务器一般作用于客户端.比如Go ...

  2. nginx重定向规则详细介绍

    为何要使用301重定向 在网站建设中需要网页重定向的情况很多:如网页目录结构变动,网页重命名.网页的扩展名改变.网站域名改变等.如果不做重定向,用户的收藏和搜索引擎数据库中的旧地址只能让访客得到一个4 ...

  3. 《基于Nginx的中间件架构》学习笔记---4.nginx编译参数详细介绍

    通过nginx -V查看编译时参数: 在nginx安装目录下,通过./configure --help,查看对应版本ngnix编译时支持的所有参数: Nginx编译参数详细介绍: --help 显示本 ...

  4. 微服务架构学习与思考(10):微服务网关和开源 API 网关01-以 Nginx 为基础的 API 网关详细介绍

    微服务架构学习与思考(10):微服务网关和开源 API 网关01-以 Nginx 为基础的 API 网关详细介绍 一.为什么会有 API Gateway 网关 随着微服务架构的流行,很多公司把原有的单 ...

  5. php CGI、Fastcgi、PHP-FPM的详细介绍与之间的关系

    以下PHP CGI.Fastcgi.PHP-FPM的一些信息归纳和汇总----->详细介绍与之间的关系 一:CGI是干嘛的?CGI是为了保证web server传递过来的数据是标准格式的 web ...

  6. WDCP是什么 关于WDCP的详细介绍

    WDCP是WDlinux Control Panel的简称,是一套用PHP开发的Linux服务器管理系统以及虚拟主机管理系统,,旨在易于使用Linux系统做为我们的网站服务器,以及平时对Linux服务 ...

  7. nginx系列 3 nginx.conf介绍(1)

    一. nginx.conf 文件结构概述 在第一篇中讲到nginx的安装,安装完后,默认的nginx服务器配置文件都存在安装目录conf中,主配置文件名为nginx.conf.下面是我linux系统安 ...

  8. kubernetes实战篇之helm示例yaml文件文件详细介绍

    系列目录 前面完整示例里,我们主要讲解helm打包,部署,升级,回退等功能,关于这里面的文件只是简单介绍,这一节我们详细介绍一下这里面的文件,以方便我们参照创建自己的helm chart. Helm ...

  9. swoole运行模式加速laravel应用的详细介绍

    本篇文章给大家带来的内容是关于swoole运行模式加速laravel应用的详细介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 一.Swoole Swoole号称重新定义了PHP, ...

随机推荐

  1. oracle 数据库优化【转载】

    版权声明:本文为CSDN博主「咫尺的梦想ing」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明.原文链接:https://blog.csdn.net/u01305 ...

  2. springCloud分布式事务实战(一)案例需求及实现步骤

    本文不对分布式事务原理进行探索,而是通过一个案例来说明如何使用分布式事务 案例需求:创建2个基于springCloud的微服务,分别访问不同的数据库:然后创建一个整合服务,调用微服务实现数据的保存到2 ...

  3. activemq 笔记

    官网下载好后,修改下conf下activemq.xml配置文件就可以了. 主要将这里的ip改成我们这里用的locahost就可以了: <transportConnectors> <! ...

  4. angular 的配置文件的应用

    为什么要使用 angular 的配置文件: 好处:我们可以在一个页面上,实现多个页面的跳转的感觉,但只是在一个页面上进行的操作: 我们的准备工作:下载 angular-route.js 插件 在依赖模 ...

  5. virt-manager 使用 shh 远程访问配置方法

    1.下载安装 Xming+Xshell  或者 Xming+putty,启动Xming服务 Xming下载地址 2.XMing的配置:打开XLaunch,记住Display Number,现在这里是0 ...

  6. iOS证书详解

    一.成员介绍1.    Certification(证书)证书是对电脑开发资格的认证,每个开发者帐号有一套,分为两种:1)    Developer Certification(开发证书)安装在电脑上 ...

  7. Linux_用户权限管理

    目录 目录 用户管理 useradd创建用户 userdel删除用户 usermod修改用户账号 passwd修改用户密码 用户权限设置 用户组管理 查看用户的属组 修改用户组gpasswd 为没有家 ...

  8. robotframework(rf)中对时间操作的datetime库常用关键字

    1.对固定日期进行操作,增加或减去单位时间或者时间段 2.对两个时间段进行操作 3.对时间格式转化,获取时间戳. 4.从完整时间中取指定年月日等 5.对时间类型进行格式化 6.获取当前时间或者指定时区 ...

  9. windows 使用Docker Desktop 使用国内镜像

    ===新增一些比较给力的镜像=== 1.中科大镜像加速地址 https://docker.mirrors.ustc.edu.cn 2.阿里云镜像服务 ========= 原本在配置项中添加了:国内镜像 ...

  10. Vue 渲染函数

    Vue 推荐在绝大多数情况下使用模板来创建你的 HTML.然而在一些场景中,你真的需要 JavaScript 的完全编程的能力.这时你可以用渲染函数,它比模板更接近编译器. 一 项目结构 二 App组 ...