专栏首页Java后端技术栈Nginx模块管理和进程管理

Nginx模块管理和进程管理

前言

Nginx和Apache一样,同样使用模块化管理,但是和Apache“热插拔”(每次添加模块的时候,不需要重新编译,只需要重新载入即可)的方式不同,Nginx每次添加一个模块或删除一个模块的话都需要重新编译才可以适用相应的功能模块。

上一篇(Nginx的源码结构和模块初始化 )已经说了Nginx的主要模块包括core、event、http、mail和misc(杂项),而每一个模块根据需要又有很多模块,这5类模块只有core是不可以禁止,其他的模块可以根据实际情况进行选择。

选择适用Nginx的模块

在Nginx(1.8.0)目录下适用./configure –help可以查看哪些模块已经被安装:

在上边的信息中,–with-XXX表示启用,–without-XXX则表示禁用,咋这里边所有–with-XXX的模块在默认安装的时候都没有安装,而所有–without-XXX的模块则表示在默认安装是已经被选入的模块,因此,要注意这个规则。另外还有既有–with-XXX还有–without-XXX的,那么这个选择就不是我们选择的了,在安装的时候根据系统的情况会自己安装的。

Nginx安装第三方模块

在对Nginx进行configure配置编译的时候,有一个参数–add-module,就是用来调价第三方模块的,例如:

--add-module=/root/nginx-accesskey-2.0.3

这个是防盗链的模块,安装就这么简单。

Nginx的进程管理

Nginx分为Single和Master两种进程模式,Single为单进程方式工作,通过ngx_single_process_cycle完成,Master模型即是一个master进程和多个worker进程,在实际的开发过程中使用Master方式。

Nginx在运行在Linux内核版本2.6以上的机子上使用的是epoll模型,所谓epoll模型就是“老板和下属”的类型,老板接活下属来做。

版权声明

Java后端技术所推送文章,为本人原创、网上收集或其他作者投稿,对于网上收集部分除非确实无法确认,我们都会注明作者和来源。部分文章推送时未能与原作者取得联系。若涉及版权问题,烦请原作者联系我们,我们会在24小时内删除处理,谢谢!^_^ QQ:1573876303。

本文分享自微信公众号 - Java后端技术(JavaITWork),作者:徐刘根

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-03-20

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Java入行5年明白的10个问题

    今天想跟大家聊聊自己体会,所以今天的文章我们不聊技术,来说点大实话,入行5年整理了10个问题,分享给大家,这些问题是很多刚入行或者工作几年的程序员都会遇到的问题...

    Java后端技术
  • 你应该知道的缓存进化史!

    本文是上周去技术沙龙听了一下爱奇艺的Java缓存之路有感写出来的。先简单介绍一下爱奇艺的java缓存道路的发展吧。

    Java后端技术
  • Nginx初探

    Nginx——Ngine X,是一款自由的、开源的、高性能HTTP服务器和反向代理服务器;也是一个IMAP、POP3、SMTP代理服务器;也就是说Nginx本身...

    Java后端技术
  • Python学习笔记7——文本、模块

    参考书籍:《Learning_Python_5th_Edition.pdf》,一本英文书呢,我上传到百度网盘吧,请点击这里,密码是:kym3

    py3study
  • NodeMCU初探

    对于ESP8266模块,早就想知道如何用其脚本语言, 自己先用的这个模块测试的 ? 首先是先下载需要用到的工具和固件 链接:http://pan.baidu.c...

    杨奉武
  • 你连Nginx怎么转发给你请求都说不清楚,还好意思说自己不是CRUD工程师?

    Nginx由内核和模块组成,Nginx本身做的工作实际很少,当它接到一个HTTP请求时,它仅仅是通过查找配置文件将此次请求映射到一个location block...

    程序员小强
  • JS模块加载框架 SeaJS

    SeaJS是一个遵循CMD规范的JavaScript模块加载框架,可以实现JavaScript的模块化开发及加载机制,兼容所有主流浏览器 SeaJS的主要目的...

    dys
  • ABP入门系列(15)——创建微信公众号模块

    源码路径:Github-LearningMpaAbp 1. 引言 现在的互联网已不在仅仅局限于网页应用,IOS、Android、平板、智能家居等平台正如火如...

    圣杰
  • Nokia 920板砖自救(理论上通用,升级Win10成板砖也可以用这个恢复)

    异常处理汇总 ~ 修正果带着你的Net飞奔吧! http://www.cnblogs.com/dunitian/p/4599258.html 个人博客:http...

    逸鹏
  • 复习python第六天

    Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句。

    sjw1998

扫码关注云+社区

领取腾讯云代金券