Nginx初步入门

官网:nginx.org

Nginx (“engine x”) 是一个开源的、支持高性能、高并发的WWW服务和代理服务软件。 它是由俄罗斯人IgorSysoev开发的,最初被应用在俄罗斯的大型网站上。 2.Nginx3大主要功能 1)网页服务:自身是静态Web服务, 还支持动态Web服务 PHP(fastcgi_pass) JAVA(proxy_pass) Python(uwsgi_pass) ================================== memcache(memcache_pass) ...... 2)负载均衡\反向代理 haproxy,lvs,F5,netscaler 只支持http,现在tcp/udp。 3)缓存服务器 squid,varnish 3.特点 最大特点:静态小文件高并发,占用资源少。软件本身小。 企业面试时需要解答如下Nginx HTTP服务器的特色及优点: 1)支持高并发:能支持几万并发连接(特别是静态小文件业务环境)。 2)资源消耗少:在3万并发连接下,开启10个Nginx线程消耗不到200MB内存。 3)可以做HTTP反向代理及加速缓存,即负载均衡功能,内置对RS节点服务 器健康检查功能,这相当于专业的haproxy软件或lvs的功能。 具备squid等专业缓存软件等的缓存功能。 4.Nginx主要应用场景: 1)静态Web服务器: 使用Nginx运行HTML、JS、CSS、小图片等静态数据(此功能类似lighttpd软件)。 2)配合运行动态Web服务器: Nginx结合FastCGI运行PHP等动态程序(例如使用fastcgi_pass方式)。 Nginx结合proxy_pass支持Java动态程序(tomcat/resin服务)。Nginx结合uwsgi_pass支持Python。 3)反向代理/负载均衡 http负载均衡 4)做Web缓存服务器(把文件放入内存里)。 5.反向代理与负载均衡 (1)正向代理:由内向外。 代替 效率低 代替局域网内PC,请求外部应用服务。 (2)反向代理:由外向内 代替 效率低 代替外部的用户请求内部的应用服务器,也有负载均衡的功能,但不能混为一谈。 (3)负载均衡:转发、效率高 甩手掌柜。 6.为什么Nginx总体性能比Apache高? (1)Nginx使用最新的epoll(Linux2.6内核)和kqueue(freebsd)异步网络I/O模型,而Apache则使用的是传统的select模型。目前Linux下能够承受高并发访问的Squid、Memcached软件都采用的是epoll模型。 (2)Apache则使用的是传统的select模型,Nginx使用高并发的epoll模型 (3)select模型:伙伴去宿舍找你,一个宿舍一个宿舍找。。效率低。 (4)epoll模型: 伙伴去宿舍找你,先问宿管大妈,看看在哪间宿舍,然后直奔具体宿舍。效率高。 7.软件安装方式 (1)rpm安装 优点:安装简单,速度快。 缺点:依赖多,解决依赖困难繁琐。 (2)yum安装 优点:简单快,自动解决依赖。 缺点:不能选择软件版本或软件存放路径。 (3)编译安装(源码编译) 缺点:安装速度慢,复杂,需要GCC编译器。 优点:可以自定义安装(版本、软件路径) (4)将源码制作成rpm,然后放到yum仓库,实现yum自动安装。 缺点:一次性慢,复杂 优点:安装快,可以自定义安装(版本、软件路径) (5)二进制安装 制作RPM YUM仓库搭建 https://blog.oldboyedu.com/autodeploy-rpm/ 8. 安装Nginx

此处介绍两种安装方式 (1)YUM安装 yum安装又分为两种安装方式 1)epel源安装,安装版本低。 2)nginx官方源安装,版本高 (2)编译安装 8.1 YUM安装

(1)配置nginx官网源

1)配置nginx.repo文件 [root@web01 ~]# vim /etc/yum.repos.d/nginx.repo [nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/7/$basearch/ gpgcheck=0 enabled=1 2)yum安装nginx,并启动 [root@web01 ~]# yum -y install nginx 3)检查是否安装成功 [root@web01 ~]# rpm -qa nginx nginx-1.18.0-1.el7.ngx.x86_64 4)启动nginx服务 [root@web01 ~]# systemctl start nginx [root@web01 ~]# systemctl enable nginx 5)检查端口 [root@web01 ~]# netstat -lntup|grep 80 tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 6825/nginx: master

6)浏览器访问测试

访问成功

8.2 编译安装

(1)下载nginx的rpm包

image.png

[root@web01 ~]# mkdir -p /server/tools [root@web01 ~]# cd /server/tools [root@web01 /server/tools]# wget [root@web01 /server/tools]# ll -h total 1016K -rw-r--r-- 1 root root 1016K Apr 21 22:33 nginx-1.18.0.tar.gz

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpgfpj.html