浅析Nginx与Apache的区别[通俗易懂]

浅析Nginx与Apache的区别[通俗易懂]Nginx:1.轻量级,采用C进行编写,同样的web服务,会占用更少的内存及资源2.抗并发,nginx以epollandkqueue作为开发模型,处理请求是异步非阻塞的,多个连接对应一个进程,负载能力比apache高很多,而apache则是同步多进程模型,只能一个连接对应一个进程,当压力过大时,它是会被阻塞型的。在高并发下nginx能保持低资源低消耗高性能,而apache在PHP处…

大家好,又见面了,我是你们的朋友全栈君。

Nginx相对于Apache的优势:

1.轻量级,采用C进行编写,同样的web服务,会占用更少的内存及资源
2.抗并发,nginx以epoll and kqueue作为开发模型,处理请求是异步非阻塞的,多个连接对应一个进程,负载能力比apache高很多,
  而apache则是同步多进程模型,只能一个连接对应一个进程,当压力过大时,它是会被阻塞型的。
  在高并发下nginx能保持低资源低消耗高性能 ,而apache在PHP处理慢或者前端压力很大的情况下,很容易出现进程数飙升,从而拒绝服务的现象。
3.设计高度模块化,编写模块相对简单
4.配置简洁,正则配置让很多事情变得简单,而且改完配置能使用 -t 测试配置有没有问题,apache 配置复杂 ,重启的时候发现配置出错了,会很崩溃
5.一般用于处理静态文件,静态处理性能比apache高三倍以上
6.作为负载均衡服务器,支持7层负载均衡
7.本身就是一个反向代理服务器,而且可以作为非常优秀的邮件代理服务器
8.nginx启动特别容易, 并且几乎可以做到 7*24 不间断运行,即使运行数个月也不需要重新启动,
  支持热部署,比如:实现不间断服务的情况下进行软件版本的升级与版本的回退
9.社区活跃,各种高性能模块出品迅速

Apache相对于Nginx的优势:

1.apache的rewrite比nginx强大,在rewrite频繁的情况下,用apache
2.apache发展到现在,模块超多,基本想到的都可以找到
3.apache更为成熟,少bug ,nginx的bug相对较多
4.apache超稳定,一个进程死掉时,会影响到多个用户的使用,稳定性差
5.apache对PHP支持比较简单,nginx需要配合其他后端用
6.apache在处理动态请求有优势,nginx在这方面是鸡肋,一般动态请求要apache去做,nginx适合静态和反向。
7.apache仍然是目前的主流,拥有丰富的特性,成熟的技术和开发社区

总结:

两者最核心的区别在于:
Apache是同步多进程模型,一个连接对应一个进程,而Nginx是异步的,多个连接(万级别)可以对应一个进程。

适用场景:

一般来说,需要性能的web服务,用Nginx;如果不需要性能只求稳定,更考虑Apache;
Nginx处理放静态内容比Apache要好,特别是在可承受压力、带宽及资源消耗上都要优于Apache。
所以更为通用的方案是,前端Nginx抗并发,后端Apache集群,配合起来会更好。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132076.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 安装下载App_windows server 2022下载

    安装下载App_windows server 2022下载安装指南入门标题页3WindowsServerAppFabric安装和配置指南3版权3版权所有3简介3清单:规划安装4硬件要求4使计算机作好安装准备5本节内容5安装关键的Windows更新5安装Windows更新6安装修补程序6KB9804236安装.NETFramework6安装W…

    2022年10月17日
    0
  • Ubuntu设置代理服务器

    Ubuntu设置代理服务器由于公司网络的原因,apache的网站访问不了,对于需要经常访问apache网站查看文档的我,最近想了一种方法,在自己的阿里云服务器上搭建一个代理服务器。经过查资料,最终决定使用TinyProxy。首先在代理服务器上安装TinyProxy,安装步骤如下:1.执行以下命令,安装TinyProxyapt-getinstalltinyproxy2.安装成功后,修改配置文件vim…

    2022年6月3日
    185
  • 《Java基础视频-深入浅出精华版视频》视频下载及视频介绍

    《Java基础视频-深入浅出精华版视频》视频下载及视频介绍

    2021年5月26日
    94
  • Django接口_小米电视spdif接口

    Django接口_小米电视spdif接口前言在RESTful规范中,有关版本的问题,用restful规范做开放接口的时候,用户请求API,系统返回数据。但是难免在系统发展的过程中,不可避免的需要添加新的资源,或者修改现有资源。因此,改动升

    2022年7月30日
    7
  • TCN代码随记(如何记代码)

    标题np.arange()np.arange()函数返回一个有终点和起点的固定步长的排列,如[1,2,3,4,5],起点是1,终点是6,步长为1。参数个数情况:np.arange()函数分为一个参数,两个参数,三个参数三种情况1)一个参数时,参数值为终点,起点取默认值0,步长取默认值1。2)两个参数时,第一个参数为起点,第二个参数为终点,步长取默认值1。3)三个参数时,第一个参数为起点,第二个参数为终点,第三个参数为步长。其中步长支持小数np.random.shufflenp.random

    2022年4月11日
    75
  • 后台开元模板 H-ui.admin

    后台开元模板 H-ui.admin

    2022年3月12日
    31

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号