欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Nginx从入门到实践-基础篇(了解)

程序员文章站 2022-07-13 08:35:14
...

基础篇
快速安装
配置语法
默认模块
Nginx的lod
访问限制
HTTP的请求和连接
请求限制与连接限制
access模块配置语法
请求限制局限性
基本安全认证
auth模块配置语法
安全认证局限性
基础环境调试确保四项确认
	1. 确认系统网络
			ping www.baidu.com
	2. 确认yum可用
	        yum list 
	3. 确认关闭iptables规则
			查看规则是否存在  ipatnles -l
			关闭规则     iptables -F
			ipatbles -t nat -L
			iptables - t nat -F
	4. 确认停用selinux
	       查看 selinux是否关闭
	       getenforce
	       如果不是Disabled
	       需要敲一个  setenforce 0   去关闭一下
基本工具安装
	1. yum -y install gcc gcc-c++ autoconf pcre-devel make automake
	2. yum -y install wget httpd-tools vim
一次初始化
cd /opt;mkdir app download logs work backup
	1. app				存放代码目录
	2. download			存放网上下载的源码包等
	3. logs				自定义日志
	4. work				存放shell脚本
	5. backup			默认的配置文件备份或者需要备份的一些文件或目录
Nginx的中间件架构
一、Nginx简述

Nginx是一个开源高性能、可靠的HTTP中间件、代理服务。

二、常见的HTTP服务

HTTPD - Apache基金会
IIS - 微软
GWS - Google

三、为什么选择Nginx?

原因一、IO多路复用epoll

一、什么是IO复用

Nginx从入门到实践-基础篇(了解)

产生多个请求,处理多个并发的请求,对于中间件就会产生多个IO流对系统的读写,那么对于IO流请求操作系统内核有并行和串行的处理的概念, 串行处理的方式一个一个处理,前边发生阻塞,后边的请求就无法完成,所以这个时候我们就要考虑并行的方式来完成整个IO流的请求,实现最大的并发和吞吐,这个时候就用到了IO复用的技术,IO复用技术就是让一个Socket来作为复用完成整个IO流的请求,当然实现这个IO流的请求,用上图的这种方式就可以实现,除了多线程的方式还有哪一些,那就是IO多路复用。

多个描述符的I/O操作都能在一个线程内并发交替地顺序完成,这就叫I/O多路复用,这里的 复用 值的是复用同一个线程。

二、什么是epoll

IO多路复用的实现方式 select、poll、epoll

select 采用的是代理线性的方式,存在一个问题会去不断的遍历队列里边的内容从而导致效率低下
select缺点:

  1. 能够见识文件描述符的数量存在最大限制
  2. 线性扫描效率低下

2.6内核以后才有了epoll模型
1. 每当FD就绪,采用系统的回调函数之间将FD放入,效率更高。
2.最大连接无限制

原因二、轻量级

  • 功能模块少
  • 代码模块化

原因三、CPU亲和(sffinity)

Nginx从入门到实践-基础篇(了解)

一、什么是CPU亲和

是一种把CPU核心和Nginx工作进程绑定方式,吧每个worker进程固定在一个CPU上执行,减少切换CPU的cache miss, 获得更好的性能。

原因四、sendfile

零拷贝传输模式

File
Buffer Cache
Socket
相关标签: Nginx nginx linux