Apache和Nginx的区别

Apache 和 Nginx的区别与比较:

 

Apache:

Apache HTTP Server(简称apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一,它快速、可靠并且通过简单的API扩展,将Perl/Python等解释器编译到服务器中。

Apache是以进程为基础的结构,进程要比线程消耗更多的系统开支,不太适用于多处理器环境,因此,在一个apache Web站点扩容时,通常是增加服务器或扩充群集节点而不是增加处理器。

 

Nginx:

Nginx是一个高性能的HTTP和反向代理服务器。

是一款轻量级的web服务器/反向代理服务器/电子邮件(IMAP/POP3)代理服务器。

 

1、优缺点比较:

(1)nginx相对于apache的优点:

* 轻量级,同样起web服务,比apache占用更少的内存及资源

* 抗并发,nginx处理请求是异步非阻塞的,而apache是阻塞型的

在高并发下,nginx能保持低资源低消耗高性能

* 高度模块化的设计,编写模块相对简单

(2)apache相对于nginx的优点:

* Rewrite比nginx的rewrite强大   ###rewrite的主要功能就是实现统一资源定位符(URL)的跳转

* 模块多,基本想到的都可以找到

* 少bug,nginx的bug相对较多

* 超稳定

存在的理由:一般来说,需要性能的web服务,用nginx。若不需要性能只求稳定,就选用apache。

2、作为web服务器:

相比apache,nginx使用更少的资源,支持更多的并发连接,体现更高的效率。

Nginx作为负载均衡服务器:nginx既可以在内部直接支持rails和php程序对外进行服务,也可以支持http代理服务器对外进行服务。Nginx采用C进行编写,不论是系统资源开销还是CPU使用效率都比较好。

作为邮件代理服务器:最早开发这个产品的目的之一也是作为邮件代理服务器。

3、nginx配置简洁, apache较复杂

Nginx静态处理性能比apache高3倍以上

4、最核心的区别在于:apache是同步多进程模型,一个连接对应一个进程,nginx是异步的,多个连接可以对应一个进程。

Nginx处理静态文件好,耗费内存少,只适合静态和反向。Apache在处理动态有优势,nginx并发性比较好,CPU占用内存低,如果rewrite频繁,选用apache最佳。

总的来说,apache依然是大部分公司的首选

时间: 2024-10-09 23:45:49

Apache和Nginx的区别的相关文章

Apache与Nginx的区别

http://weilei0528.blog.163.com/blog/static/206807046201321810834431/ 从运行原理及使用场景看Apache和Nginx

(转)apache和nginx的区别

nginx 相对 apache 的优点: 轻量级,同样起web 服务,比apache 占用更少的内存及资源 抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能 高度模块化的设计,编写模块相对简单 社区活跃,各种高性能模块出品迅速啊 apache 相对nginx 的优点: rewrite ,比nginx 的rewrite 强大(rewrite把传入Web的请求重定向到其他URL的过程.URL Rewrite最常见的应用是URL伪

Apache 和 Nginx 的区别

Nginx: 1.轻量级,采用 C 进行编写,同样的 web 服务,会占用更少的内存及资源 2.抗并发,nginx 以 epoll and kqueue 作为开发模型,处理请求是异步非阻塞的,负载能力比 apache 高很多,而 apache 则是阻塞型的.在高并发下 nginx 能保持低资源低消耗高性能 ,而 apache 在 PHP 处理慢或者前端压力很大的情况下,很容易出现进程数飙升,从而拒绝服务的现象. 3.nginx 处理静态文件好,静态处理性能比 apache 高三倍以上 4.ngi

Apache,tomcat,nginx的区别和优缺点

Apache的定义 Apache HTTP服务器是一个模块化的服务器,可以运行在所有广泛使用的计算机平台.属于应用服务器 优点: 支持模块多,性能稳定,本身是静态解析不支持动态, 但可以通过扩展脚本,模块等支持动态页面. tomcat: Tomcat是应用(Java)服务器,它只是一个Servlet(JSP也翻译成Servlet)容器,可以认为是Apache的扩展,但是可以独立于Apache运行. nginx: Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx, 是一个高性能的H

apache与nginx区别

apache是异步阻塞处理请求:nginx是异步非阻塞.其具体差异,看看此人解释.http://blog.csdn.net/xifeijian/article/details/17385831.说的很详细. Nginx的高并发得益于其采用了epoll模型,与传统的服务器程序架构不同,epoll是linux内核2.6以后才出现的.下面通过比较Apache和Nginx工作原理来比较. 传统Apache都是多进程或者多线程来工作,假设是多进程工作(prefork),apache会先生成几个进程,类似进

nginx和apache作为webserver的区别

1.两者所用的驱动模式不同. nginx使用的是epoll的非阻塞模式事件驱动. apache使用的是select的阻塞模式事件驱动. 2.fastcgi和cgi的区别 当用户请求web服务的时候,web会根据不同的需求将请求发送给不同个cgi来处理. cgi模式,就是每次有请求的时候都fork一个新的进程来处理这个请求,处理完成后再关闭这个进程. fastcgi模式,就是在服务器启动的时候根据配置文件建立几个cgi接口进程长驻在内存当中,当有请求连接的时候,cgi被激活来处理请求连接,处理完毕

详谈Apache、Nginx和tomcat的区别以及处理静态页面和动态页面的方式

就目前来说,网站主要分为静态页面和动态页面,纯静态页面的网站已经比较少见了,大型网站一般使用的是静态页面+动态页面的建站技术,还有一部分网站是纯动态页面.负责处理这些页面的软件我们通常称之为web容器,是一种服务程序,负责处理客户端(浏览器)发来的访问请求,如果是静态页面会直接将文件内容呈现给客户端(浏览器),如果是动态页面会将其解析成静态内容之后再呈现给客户端(浏览器). 一.Apache.Nginx和tomcat的区别 ApacheApache HTTP Server(简称Apache)是A

Apache 、Tomcat、Nginx的区别

一.定义:     Apache  Apache HTTP服务器是一个模块化的服务器,可以运行在几乎所有广泛使用的计算机平台上.其属于应用服务器.Apache支持支持模块多,性能稳定,Apache本身是静态解析,适合静态HTML.图片等,但可以通过扩展脚本.模块等支持动态页面等. (Apche可以支持PHPcgiperl,但是要使用Java的话,你需要Tomcat在Apache后台支撑,将Java请求由Apache转发给Tomcat处理.) 缺点:配置相对复杂,自身不支持动态页面.     To

Apache与Nginx的优缺点比较

Apache与Nginx的优缺点比较 1.nginx相对于apache的优点: 轻量级,同样起web 服务,比apache 占用更少的内存及资源 抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能 高度模块化的设计,编写模块相对简单 社区活跃,各种高性能模块出品迅速啊 apache 相对于nginx 的优点: rewrite ,比nginx 的rewrite 强大 模块超多,基本想到的都可以找到 少bug ,nginx 的bu