- 什么是nginx?
nginx是高效的,可靠的http服务,和中间件.
http服务
1. HTTPD - apache
tomcat 实现了java的servlet接口
jboss 都是实现了servlet接口.
2. IIS 微软
3. GWS 这个不对外开放,google内部使用.
- 为什么选择nginx?
- IO多路复用,采用了epoll模型. 完爆tomcat.
多个描述符I/O操作都可以在一个线程内并发顺序执行.
这里指的复用就是同一个线程.
epoll模型
好处:每当FD就绪的时候,就调用回调函数,将FD返回。效率更高.
最大的连接无限制.
- 轻量级
功能比较少.
模块化:
阅读性高
二次开发比较好 需要lua
- sendfile 完爆tomcat
对静态资源有高效处理.
- cpu亲和(affinity)
一个进程 对应一个 核心CPU
- 环境调试确认
4.1 确认系统网络: ping www.baidu.com
4.2 确认iptables
查看 iptables -L
关闭 iptables -t nat -L
4.3 确认yum可用: yum list | grep gcc
4.4 确认selinux
查看 getenforce
关闭 setenforce 0
- nginx目录结构
/etc/logrotate.d/nginx
/etc/nginx
/etc/nginx/conf.d
/etc/nginx/conf.d/default.conf
/etc/nginx/fastcgi_params
/etc/nginx/koi-utf
/etc/nginx/koi-win
/etc/nginx/mime.types
/etc/nginx/modules
/etc/nginx/nginx.conf
/etc/nginx/scgi_params
/etc/nginx/uwsgi_params
/etc/nginx/win-utf
/etc/sysconfig/nginx
/etc/sysconfig/nginx-debug
/usr/lib/systemd/system/nginx-debug.service
/usr/lib/systemd/system/nginx.service
/usr/lib64/nginx
/usr/lib64/nginx/modules
/usr/libexec/initscripts/legacy-actions/nginx
/usr/libexec/initscripts/legacy-actions/nginx/check-reload
/usr/libexec/initscripts/legacy-actions/nginx/upgrade
/usr/sbin/nginx
/usr/sbin/nginx-debug
/usr/share/doc/nginx-1.12.2
/usr/share/doc/nginx-1.12.2/COPYRIGHT
/usr/share/man/man8/nginx.8.gz
/usr/share/nginx
/usr/share/nginx/html
/usr/share/nginx/html/50x.html
/usr/share/nginx/html/index.html
/var/cache/nginx
usr
universal shared only-read data 全局共享只读数据.
var variable data files 可变化的文件,存放经常变化的文件.
- 所需要的安装包
yum -y install gcc gcc-c++ autoconf pcre pcre-devel make automake
yum -y install httpd-tools
本文参与
腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019.04.28 ,如有侵权请联系
cloudcommunity@tencent.com 删除