Nginx 安装 和 特性介绍
一:nginx 环境搭建
官方文档
http://nginx.org/en/docs/http/ngx_http_core_module.html#var_args
四项确认
- 确认系统网络可通行
- 确认yum可用
- 确认关闭iptables规则
- 确认停用selinux
查看iptables规则
iptables -L
关闭iptables规则
iptables -F
获得当前selinux状态
getenforce
关闭selinux
setenforce 0
关闭防火墙
# 关闭防火墙 systemctl stop firewalld.service # 设置开机不起动 systemctl disable firewalld.service
两项依赖安装
yum install -y gcc gcc-c++ autoconf pcre pcre-devel make automake yum install -y wget httpd-tools vim
一次初始化,初始化目录是以后我们放对应的文件代码
app:
代码目录
download:下载的源码包等
logs:自定义日志
work:一些shell脚本
backup:默认配置文件的备份
cd /opt mkdir app download logs work backup
安装过程
第一步:添加Nginx到YUM源
添加CentOS 7 Nginx yum资源库,打开终端,使用以下命令
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
第二步:安装
在CentOS 7 服务器中使用yum命令从Nginx源服务器中获取来安装Nginx
yum install -y nginx
第三步:启动Nginx
刚安装的Nginx不会自行启动。运行Nginx
systemctl start nginx.service # 设置开机自启 systemctl enable nginx.service
如果一切进展顺利的话,现在你可以通过你的域名或IP来访问你的Web页面来预览一下Nginx的默认页面
Nginx的特性-实现优点
原因一:IO多路复用epoll
什么是IO复用?
多个描述符的 I/O 操作都能在一个线程内并发交替地顺序完成,这就叫I/O多路复用,这里的"复用"指的是复用同一个线程。
原因二:轻量级
功能模块少:
源代码里只有核心代码,其他代码以插件形式安装
代码模块化:
适合二次改进
原因三:CPU亲和(affinity)
nginx正是利用到了cpu的亲和来提高并发处理能力以及减少不必要的cpu损耗。
1.什么是CPU亲和
是一种把CPU核心和Nginx工作进程绑定方式,把每个worker进程固定在一个cpu上执行,减少cpu的cache miss,获得更好的性能。
2.为什么需要CPU亲和
ginx采用sendfile机制处理静态文件,因此效率很高。
上图是传统的http服务,当我们访问一个文件时,会先经过内核空间,再经过用户空间,传给socket,最后通过response返回给用户。该过程需要多次与用户空间进行切换,但是静态文件其实不需要与用户空间进行过多的逻辑处理。直接可以通过内核空间传输。
sendfile机制只通过内核空间,将文件传给socket,最终响应给用户。
因此nginx在处理CDN和动静分离服务时有很大优势。
相关文章
- 安装Nginx
- 尝鲜——Windows11 安装教程 (无视TMP2.0)
- selenium工具的安装
- CentOs环境下安装Nginx
- linux系统下nginx安装目录和nginx.conf配置文件目录
- Linux系统nginx安装说明(在线/离线安装)
- 源码安装Nginx加TCP反向代理模块
- centos启动Nginx提示nginx: [emerg] still could not bind()
- 《Hadoop海量数据处理:技术详解与项目实战(第2版)》一2.5 安装HBase
- Linux安装MySQL
- ubuntu16.04下安装pycharm
- Centos7.3离线(tar方式)安装mysql服务
- Nginx安装lua-nginx-module模块
- Linux-019-Centos Shell 安装 Nginx 后启动时提示找不到Lua模块的libluajit-5.1.so.2文件,具体提示信息:./nginx: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: No such file or directory
- SharePoint Server 2013 安装篇 - 如何解决已安装 .net 4.5 ,SharePoint Server 2013 却找不到的的问题
- Ubuntu 18.04 安装rtorrent笔记
- Nginx配置文件nginx.conf中文详解
- openstack-计算节点安装(Node)
- nginx lua 安装spdy
- Linux(Centos)之安装Nginx及注意事项
- Linux CentOS PhpMyAdmin安装--转载
- Nginx for windows 安装部署
- centos 6.5下安装mysql+nginx+redmine 3.1.0 笔记
- nginx-下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件