nginx中间件
Nginx简介
Nginx是一个开源且高性能、可靠的HTTP中间件、代理服务。其特点是占有内存少,并发能力强。
Nginx优势:IO多路复用epoll
1、什么是IO复用
它是内核提供的一种同时监控多个文件描述符状态改变的一种能力;例如当进程需要操作多个IO相关描述符时(例如服务器程序要同时查看监听socket和大量业务socket是否有数据到来),需要内核能够监控这许多描述符,一旦这些描述符有就绪(或者状态改变了)就告诉主动告诉进程哪些描述符已经就绪,这样站在进程的角度,就不需要挨个的查看每个描述符是否就绪。

2、什么是IO多路复用
多个描述符的I/O操作都能在一个线程内并发交替的顺序完成,这就叫I/O多路复用,这里的“复用”指的是复用同一个线程。

参考: http://www.cnblogs.com/zingp/p/6863170.html
3、IO多路复用epoll
IO多路复用的实现方式select、poll、epoll
select方式缺点:
- 能够监视文件描述符的数量存在最大限制
- 线性扫描效率低下
select方式优点:
- Windows、linux都支持

epoll方式优点:
- 没有最大并发连接的限制
- 效率提升,不是轮询的方式,不会随着FD数目的增加效率下降
Nginx优势:轻量级
功能模块少
代码模块化
Nginx优势:CPU亲和
CPU亲和是一种把CPU核心和Nginx工作进程绑定方式,把每个worker进程固定在一个CPU上执行,减少切换CPU的cache miss,获得更好的性能。

Nginx优势:sendfile

nginx安装
官方:http://nginx.org/en/linux_packages.html
1、准备
yum -y install gcc gcc-c++ autoconf pcre pcre-devel make automake
yum -y install wget httpd-tools vim
2、yum源
vim /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=0
enabled=1
3、查看
yum list|grep nginx
4、安装
yum install nginx -y
5、版本
nginx -v
nginx安装目录
rpm -ql nginx
配置文件
/etc/logrotate.d/nginx :nginx日志轮转,用于logrotate服务的日志切割
/etc/nginx/nginx.conf:ngnix主配置文件
/etc/nginx/conf.d/default.conf:安装后的配置备份文件
cgi相关配置
- /etc/nginx/fastcgi_params
- /etc/nginx/uwsgi_params
- /etc/nginx/scgi_params
编码转换映射文件
- /etc/nginx/koi-utf
- /etc/nginx/koi-win
- /etc/nginx/win-utf
/etc/nginx/mime.types:文件扩展名与文件类型映射表,nginx根据映射关系,设置http请求响应头的Content-Type值
用于配置系统守护进程管理器管理方式(centos7)
- /usr/lib/systemd/system/nginx-debug.service
- /usr/lib/systemd/system/nginx.service
- /etc/sysconfig/nginx
- /etc/sysconfig/nginx-debug
nginx模块目录
- /usr/lib64/nginx/modules
- /etc/nginx/modules
nginx服务的启动管理的终端命令
- /usr/sbin/nginx
- /usr/sbin/nginx-debug
nginx的手册和帮助文档
- /usr/share/doc/nginx-1.12.2
- /usr/share/doc/nginx-1.12.2/COPYRIGHT
- /usr/share/man/man8/nginx.8.gz
/var/cache/nginx:nginx的缓存目录
/var/log/nginx:nginx日志目录
ngnix安装编译
nginx -V
大写V

编译参数介绍
- 安装目录或路径
--prefix=/etc/nginx
--sbin-path=/usr/sbin/nginx
--modules-path=/usr/lib64/nginx/modules
--conf-path=/etc/nginx/nginx.conf
--error-log-path=/var/log/nginx/error.log
--http-log-path=/var/log/nginx/access.log
--pid-path=/var/run/nginx.pid
--lock-path=/var/run/nginx.lock
- 执行对应模块时,nginx所保留的临时性文件
--http-client-body-temp-path=/var/cache/nginx/client_temp
--http-proxy-temp-path=/var/cache/nginx/proxy_temp
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp
--http-scgi-temp-path=/var/cache/nginx/scgi_temp
- 设定nginx进程启动的用户和用户组
--user=nginx
--group=nginx
- 设置额外的参数将被添加到CFLAGS变量
--with-cc-opt
- 设置附加的参数,链接系统库
--with-ld-opt
nginx中间件的更多相关文章
- MySQL5.7之多源复制&Nginx中间件(上)【转】
有生之年系列----MySQL5.7之多源复制&Nginx中间件(上)-wangwenan6-ITPUB博客http://blog.itpub.net/29510932/viewspace-1 ...
- MySQL5.7之多源复制&Nginx中间件(下)【转】
有生之年系列----MySQL5.7之多源复制&Nginx中间件(下)-wangwenan6-ITPUB博客http://blog.itpub.net/29510932/viewspace-1 ...
- Nginx中间件使用心得(一)
一.Nginx简介 1.什么是Nginx? Nginx是一个高效.可靠的web服务器和反向代理中间件. (高效:支持海量并发请求,可靠:可靠运行的) 2.Nginx地位? 在https:// ...
- Nginx中间件使用心得(三)
一.Nginx搭建系统需求 1.系统硬件:CPU >= 2Core,内存 >= 256M 2.自行搭建服务器(Linux操作系统) (1) 使用vmWare虚拟服务器 (2)使用 ...
- Nginx中间件使用心得(二)
一.基础知识补充 1. 历史由来补充: Nginx是俄罗斯第二大网站的开源项目. 淘宝团队发行了 tengine 增加了很多第三方的包. 2.下载相关的主键 (1)nginx下载地址 ...
- 中间件漏洞之Nginx
中间件漏洞之Nginx 我们常见的中间件有IIS.Apache.Nginx,其中Nginx中间件有什么漏洞呢? Nginx 文件名逻辑漏洞(CVE-2013-4547): 漏洞版本: Nginx 0. ...
- Nginx从入门到实践(四)
Nginx常见问题和排错经验,实践应用场景中的方法处理Nginx安全,常见的应用层安全隐患,复杂访问控制,Nignx的sql防注入安全策略,Nginx的整体配置,搭建合理Nginx中间件架构配置步骤. ...
- Nginx从入门到实践(一)
结合实践.收集各种场景.常见问题,讲解Nginx中最实用的Webserver场景,提供一套整体的搭建配置方式 Nginx中间件,不局限于业务逻辑,有效独立于后台开发框架(不论后端是Java开发.PHP ...
- 21、Nginx 常见问题
1.多个server_name容易产生冲突,会按照如下顺序匹配 1.首先选择所有的字符串完全匹配的server_name.(完全匹配) 2.选择通配符在前面的server_name,如*.bgx.co ...
随机推荐
- 法语Linux NuTyX 11 RC2 发布
读 NuTyX是一个法语Linux发行版(具有多语言支持),由Linux From Scratch和Beyond Linux From Scratch构建,带有一个名为“cards”的自定义包管理器. ...
- BZOJ2242[SDOI2011]计算器——exgcd+BSGS
题目描述 你被要求设计一个计算器完成以下三项任务: 1.给定y,z,p,计算Y^Z Mod P 的值: 2.给定y,z,p,计算满足xy≡ Z ( mod P )的最小非负整数: 3.给定y,z,p, ...
- Codeforces Round #454 Div. 1
B:考虑2*m怎么构造.因为要求相邻的数不能再相邻,容易想到黑白染色之类的东西,考虑染个色然后大概把黑点扔一边白点扔一边.显然m<=3时无解.对m>4,m为偶数时,如1 2 3 4 5 6 ...
- 大学jsp实验4include,forword
一.实验目的与要求 1.掌握常用JSP动作标记的使用. 二.实验内容 1.include动作标记的使用 编写一个名为shiyan4_1.jsp的JSP页面,页面内容自定,但要求使用include动作标 ...
- 全局最小割Stoer-Wagner算法
借鉴:http://blog.kongfy.com/2015/02/kargermincut/ 提到无向图的最小割问题,首先想到的就是Ford-Fulkerson算法解s-t最小割,通过Edmonds ...
- 【BZOJ1426】收集邮票 期望DP
题目大意 有\(n\)种不同的邮票,皮皮想收集所有种类的邮票.唯一的收集方法是到同学凡凡那里购买,每次只能买一张,并且买到的邮票究竟是\(n\)种邮票中的哪一种是等概率的,概率均为\(\frac{1} ...
- 基于Thinkphp5.0 小程序登录插件应用
资源连接: wulongtao/think-wxminihelper 具体怎么安装,不介绍了,有不懂再问我吧: 主要重点如下: wepy:index.wpy this.$parent.getUserI ...
- 【hihocoder 1628】K-Dimensional Foil(线性代数)
hihocoder 1627 The 2017 ACM-ICPC Asia Beijing Regional Contest 北京区域赛 B.K-Dimensional Foil 题意 给定N个点的前 ...
- HNOI2019总结
HNOI2019总结 Day 1 开场看三道题,T1是个计算几何,T2是个操作树加\(border\),T3题意有点复杂.想T1想了半个多小时,发现那个钝角不是很会处理,但是40分暴力应该还是可以写, ...
- 学习1__STM32--FatFS之逻辑盘符与物理盘符
FatFS源代码中的函数逻辑关系 第一 调用函数 f_mount() result = f_mount(&fs, FS_VOLUME_NAND, ); /* Mount a logical d ...