当前位置:首页 > 技术分享 > 正文内容

WEB服务器用Nginx还是Apache好?

1年前 (2023-01-03)技术分享1923

       Nginx和Apache是我们常用的两款开源的Web服务器软件,我们一般用哪个好呢?Nginx和Apache最核心的区别在于 apache 是同步多进程模型,一个连接对应一个进程;而 nginx 是异步的,多个连接可以对应一个进程。下来我们究竟哪个好?我们又应该如何选择呢?

未标题-1.png

       Nginx最早俄罗斯人开发并且使用,安装起来比较简单,是一个高性能的HTTP和反向代理Web服务器,同时也提供了 IMAP/POP3/SMTP服务。与Apache相比,它虽然起步晚,但在性能上一点不逊色,能与静态文件配合得很好,可执行负载均衡器和反向代理功能,并且是轻量级,占用非常少内存及资源。


       Apache,音译为阿帕奇,是目前世界使用排名第一的Web服务器软件,也是一个比较早期的一个web服务器,而Nginx诞生的时间比较短,它可以兼容大多数服务器操作系统并可以流畅的运行,由于其多平台和安全性两点优势被开发者广泛使用。Apache几乎是所有流行的Linux发行版上的预安装软件,Apache起步时间比较长,有非常多的人在维护,许多开发者也喜欢Apache的可定制性及通过加载各种模块来定制自己的服务器环境。


Nginx与Apache的优缺点比较

       1.Nginx拥有优秀的架构设计,包括模块化设计、事件驱动架构、请求的多阶段异步处理、管理进程与多工作进程设计等,这意味着它可以在有可用资源时一次处理多个请求,一次可多个连接(万级别)可以对应一个进程,性能优越。相反,Apache通过MPM(多处理模块)一次处理一个事件,它会为每个事件生成子进程,并且一次只处理一个连接,当用户请求过多时,开启的进程较多,占用内存大,每秒最多的并发连接请求最多不超过3000个;

       2.Nginx动态能力比不上Apache,Apache的Rewrite比Nginx强大,但在静态资源处理上,Nginx性能比Apache高三倍以上;

       3.ApacheNginx更成熟,稳定,Bug,Nginx的Bug相对较多;

       4.Nginx采用集中式方式,这意味着用户无法在一个主文件之外配置服务器,不需要处理请求来检查每个目录中的配置文件,缩短了请求处理时间,具有更高的性能。Apache允许通过放置在Web树中的特殊文件来分散管理配置,该特殊文件通常称为.htaccess文件,它发出请求时,Apache将检查文件路径的每个元素。


       如果我追求高性能那选择Nginx,Nginx简单,性能好,占用资源少,配置低的服务器首选;要稳定的选择Apache,Apache比Nginx成熟,各种功能模块实现比Nginx好,可配置项多,但占用资源多,配置低的服务器跑起来非常吃力。一般大型网站是,前端Nginx抗并发,后端Apache集群,这样配合起来会更好。


扫描二维码推送至手机访问。

版权声明:本站内容除特殊说明外,本站文章皆由帝明博客原创发布,转载请注明出处。

本文链接:https://www.ldm.wang/read/35.html

相关文章

35DIR伪静态

Apache<IfModule mod_rewrite.c> RewriteEngine On # BEGIN # 首页、分类浏览、数据归档、最近更新、排行榜、意见反馈 Rewri...

35DIR分类目录源码常见问题解决办法

     35DIR分类目录还是有非常多站长用的分类目录源码, 因为35DIR已经停止开发,所以源码有很多问题,我把问题整理汇总:1.后台文章管理不能按浏览排序问题    &nbs...

通配符证书有什么用好处?多域通配符证书是什么?

        通配符证书是ssl证书的一种,又称为泛域名ssl证书,它的主要特点是让SSL证书所保护的网站域名变得更加灵活、更有扩展性。通配符证书一般使用*.moemperor.com的形式来匹配它...

什么是CDN加速?CDN加速原理和加速作用有哪些?

什么是CDN加速?CDN加速原理和加速作用有哪些?

        什么是CDN?CDN的全称是Content Delivery Network,即内容分发网络。CDN是在现有Internet基础上增加一层新的网络架构,通过部署边缘服务器,采用负载均衡...

服务器测试脚本

收集了一些服务器测试脚本,测试性能,网络等服务。综合工具箱wget -O box.sh https://raw.githubusercontent.com/BlueSkyXN/SKY-BOX/main/box....

centos下网络设置修改:修改IP、修改网关、DNS配置

本文介绍了centos网络配置的方法,centos网络配置主要包括IP地址、网关、dns:1、IP地址配置: /etc/sysconfig/network-scripts/ifcfg-eth02、网关配置:  /etc/sysconfig/...