【企业高性能web服务器(Nginx)】

概念介绍

在这里插入图片描述

Apache和nginx的介绍

工作原理和概念:

Apache的工作原理和概念
工作原理:

多进程模型:Apache默认使用的是多进程模型,每个子进程可以处理一个或多个客户端请求。
线程模型:Apache也可以配置成使用线程模型(如使用mod_thread模块),在这种模式下,每个子进程可以创建多个线程来处理请求。
请求处理流程:Apache接收到请求后,会根据配置文件(通常是httpd.conf)中的指令来解析请求,然后调用相应的模块来处理请求。

工作模式:

Prefork模式:预先创建多个子进程,每个子进程处理一定数量的请求。
Worker模式:使用线程来处理请求,每个子进程可以创建多个线程。
Event模式:使用事件驱动的方式来处理请求,适用于高并发场景。

优缺点

优点:
稳定性和成熟度:Apache是一个成熟且稳定的Web服务器,广泛用于静态内容和动态内容的交付。
丰富的模块支持:Apache有大量可用的模块,可以轻松扩展其功能。
强大的社区支持:由于其广泛的使用,Apache有一个强大的社区支持,文档和教程非常丰富。
缺点:
性能瓶颈:在高并发场景下,Apache的多进程模型可能会成为性能瓶颈。
内存占用较高:每个子进程都需要独立的内存空间,可能导致较高的内存占用。

Nginx的工作原理和概念
工作原理:

异步非阻塞I/O:Nginx使用的是异步非阻塞I/O模型,可以同时处理大量的并发连接。
事件驱动:Nginx基于事件驱动模型,每个事件(如新的客户端连接、数据读写等)都会触发相应的处理逻辑。
请求处理流程:Nginx接收到请求后,会根据配置文件(通常是nginx.conf)中的指令来解析请求,然后调用相应的模块来处理请求。

工作模式:

Master-Worker模式:Nginx有一个主进程和多个工作进程。主进程负责接收客户端请求并分配给工作进程,工作进程负责实际处理请求。
优点:
高性能:Nginx在高并发场景下表现出色,能够高效处理大量并发连接。
低资源消耗:由于其异步非阻塞I/O模型,Nginx的资源消耗较低。
丰富的功能模块:Nginx支持丰富的功能模块,可以轻松扩展其功能。
缺点:
处理复杂请求的能力较弱:Nginx在处理复杂的动态请求时,可能不如Apache强大。
配置复杂性:Nginx的配置文件相对复杂,新手可能需要花费更多时间来学习和调试。

总体的架构思想

Apache的架构思想:
模块化设计:Apache采用模块化设计,可以通过加载不同的模块来扩展其功能。
多进程或多线程模型:Apache支持多种工作模式,包括多进程和多线程模型,以适应不同的应用场景。

Nginx的架构思想:
事件驱动:Nginx采用事件驱动架构,能够高效处理大量并发连接。
异步非阻塞I/O:Nginx利用异步非阻塞I/O模型,实现了高性能和低资源消耗。

总结

总结来说,Apache和Nginx各有优缺点,选择哪一个取决于具体的应用场景和需求。Apache更适合处理复杂的动态请求,而Nginx在高并发场景下表现更优秀。在实际应用中,常常会结合使用Apache和Nginx,发挥各自的优势。

基本配置实验

nginx的源码编译

下好安装包:
在这里插入图片描述
安装C语言以及其他环境
在这里插入图片描述
在这里插入图片描述
开始编译
在这里插入图片描述
如果后面没有服务,需要执行 make && make install 命令

解释执行make && make install 命令原因

在Linux中通过源码安装软件时,通常会经历以下几个步骤:

  1. 下载源码:从官方网站或其他可信来源下载软件的源码包。
  2. 解压源码:使用适当的工具(如tar, unzip等)解压源码包。
  3. 配置编译选项:进入解压后的源码目录,运行./configure脚本来配置编译选项。这个脚本会检查系统环境,确定软件的安装路径以及其他配置选项,并生成Makefile文件。
  4. 编译源码:运行make命令来编译源码。这个过程会根据前面生成的Makefile文件中的规则,将源码编译成可执行文件或库文件。
  5. 安装软件:运行make install命令来安装编译后的软件。这个过程会将编译好的文件复制到系统中的适当位置,使其可以在系统中正常运行。
为什么需要执行make && make install
  1. 编译过程make命令负责根据configure脚本生成的Makefile文件,将源码编译成可执行文件或库文件。这一步骤是必要的,因为不同的系统环境可能需要不同的编译选项和优化参数。

  2. 安装过程make install命令负责将编译好的文件复制到系统中的适当位置。这样,系统就可以找到并运行这些文件。如果不执行make install,编译好的文件将不会被安装到系统中,软件也无法正常运行。
    总结 : 执行make && make install命令是源码安装过程中必不可少的步骤。make命令负责编译源码,而make install命令负责将编译好的文件安装到系统中,使其可以正常运行。这两个步骤确保了软件能够在当前系统环境中正确运行。

nginx的平滑升级及版本回滚

准备编译:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
之后:那个yebeichen是自定义的名字
在这里插入图片描述
操作NGINX服务
在这里插入图片描述
命令解释:
您遇到的错误信息 nginx: invalid option: "-s start" 表明您在尝试使用 -s start 参数启动Nginx时出现了问题。实际上,-s 参数在Nginx中用于发送信号给Nginx主进程,而不是用来启动Nginx。

正确的使用 -s 参数的方式是:

  • -s stop:立即停止Nginx。
  • -s quit:优雅地停止Nginx。
  • -s reopen:重新打开日志文件。
  • -s reload:重新加载配置文件。

如果您想要启动Nginx,应该直接运行Nginx的可执行文件,而不需要任何额外的参数。例如:

/usr/local/nginx/sbin/nginx 

这将启动Nginx服务。如果您希望使用Systemd来管理Nginx服务,可以使用以下命令:

systemctl start nginx

请确保你有适当的权限来执行这些命令,如果需要,可以在命令前加上 sudo

如果已经在使用Systemd管理Nginx,并且希望启动服务,那么使用 systemctl start nginx 是更合适的方法。如果您手动启动Nginx,那么只需运行Nginx的可执行文件即可。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值