特性介绍
Nginx 提供基本HTTP服务,可以作为HTTP 代理服务器和反向代理服务器,支持通过缓存加速访问,可以完成简单的负载均衡和容错,支持包过滤功能,支持SSL等。
Nginx 提供高级HTTP服务,可以进行自定义配置,支持虚拟主机,支持URL重定向,支持网络监控,支持流媒体传输等。
Nginx 作为邮寄代理服务器是最早开发这个产品的目的之一,他支持IMAP/POP3 代理服务功能,支持内部SMTP代理服务功能。
nginx apache比较
1、内核和功能上的比较
特性 | nginx | apache |
设计语言 | C | C、C++ |
可移植性 | 多平台 | 多平台 |
请求管理 | 事件驱动模型 使用异步套接字处理,较少了内存和CPU开销 | 同步套接字、进程和线程 每个请求都要使用一个单独的进程或线程,使用同步套接字 |
诞生时间 | 2002 | 1994 |
2、一般功能比较
功能 | nginx | apache |
https支持 | 作为模块支持 | 作为模块支持 |
虚拟主机 | 原生支持 | 原生支持 |
CGI支持 | 仅支持FastCGI | 支持CGI和FastCGI |
系统模块 | 静态模块系统 | 动态模块支持 |
从以上功能上的对比,我们很难发现那些功能Apache无法实现。那我们为什么更喜欢用Nginx呢,那就要从Nginx 相对
Apache 有那些优点说起:
- 轻量级,同样起web 服务比Apache 占用更少的内存及资源
- 静态处理,Nginx 静态处理性能比 Apache 高 3倍以上
- 抗并发,Nginx 处理请求是异步非阻塞的,而Apache则是阻塞型的。在高并发下Nginx 能保持低资源低消耗
- 高性能。在Apache+PHP(prefork)模式下,如果PHP处理慢或者前端压力很大的情况下,很容易出Apache
- 进程数飙升,从而拒绝服务的现象。
- 高度模块化的设计,编写模块相对简单
- 社区活跃,各种高性能模块出品迅速