nginx介绍

简介: Nginx 读音为 Engine X, 是俄国人IgorSysoev 开发的轻量级高性能Web 服务器。如果说Lighttpd 是后起之秀,那Nginx 可以称得上是青出于蓝而胜于蓝了。Nginx 的发布要比Lighttpd晚几年,可以说是Lighttpd 的晚辈了,开始的时候,Nginx 主要被用于提供高性能的反向代理服务器和邮件服务器的前端代理,随着Nginx 的高性能被更多的人了解,Nginx 也得到了迅速的普及。

Nginx 读音为 Engine X, 是俄国人IgorSysoev 开发的轻量级高性能Web 服务器。如果说Lighttpd 是后起之秀,那Nginx 可以称得上是青出于蓝而胜于蓝了。Nginx 的发布要比Lighttpd晚几年,可以说是Lighttpd 的晚辈了,开始的时候,Nginx 主要被用于提供高性能的反向代理服务器和邮件服务器的前端代理,随着Nginx 的高性能被更多的人了解,Nginx 也得到了迅速的普及。特别是最近两年来,Nginx 得到了高速的发展,目前Nginx 在全球互联网的装机量大概接Lighttpd 的一半左右。

Nginx 的功能要比Lighttpd 简单得多,代码量也非常少,可以说是比Lighttpd 还轻量级的Web服务器,与此同时,Nginx 提供了比Lighttpd 还要高的性能。据笔者简单的压力测试表明,Nginx大致要比Lighttpd 快10%~15% 左右,并且CPU和内存的消耗还要比Lighttpd 低一些。这就是Nginx 现在很受欢迎的主要原因。现在在国内使用Nginx 的网站也很多,例如新浪网的博客频道就是使用Nginx 的,另外,视频网站六间房也使用的是Nginx。

功能和特点

1.Nginx的性能非常惊人

前面说了Nginx 比Lighttpd 还要快一些,资源消耗还要低一些。根据其作者Igor Sysoev 自己介绍,Nginx 可以在单台物理服务器上支撑3~5万个并发请求,可以说是非常惊人的了。

2.Nginx的结构特别简单

Nginx 的功能没有Lighttpd 那么丰富,配置也没有Lighttpd 那么多,是一个结构非常简单的Web 服务器,源代码也只有8000 多行。但正因为这种简单, Nginx 安装和配置都特别容易,不需要特别地学习和掌握,就可以轻松架设一个性能非常高的Web 服务器了。

3.Nginx的文档比较匮乏

Igor Sysoev 本人是俄国人,而且承认自己的英文水平不高,因此,Nginx 的英文文档显得非常匮乏,即使是Nginx 的官方wiki 上的文档,很多地方都语焉不详,没有提供详细的示例,这是Nginx 比较弱的一个方面。

4.Nginx比较适合支持Proxy

和Lighttpd 相比,Nginx 的Proxy 功能要比Lighttpd 更加优秀,而Lighttpd 的FastCGI 支持则更加优秀。在Lighttpd 和Nginx 之间选择的话,如果你需要proxy 功能就可以选择Nginx,如果需要FastCGI 功能,就可以选择Lighttpd。

背景介绍

可能是由于Nginx 是俄国人开发的,而且作者又不善英语的缘故,Nginx 虽然已经诞生了3 年多的时间,但是早期主要还是在俄国内部普及,到2007 年3 月,俄国超过20% 的虚拟主机业务已经运行在Nginx 上面了。目前全球有4% 的互联网虚拟主机运行在Nginx 上。

目前,Nginx 除了作为Web 服务器来使用之外,还有很大的用途是充当大规模邮件服务器的前端代理,它能够代理IMAP、POP3 和SMTP 协议,因此在邮件服务器领域的用途也非常广泛。就目前来说,Nginx 的占有率还不能够和Lighttpd 相比,但是对Nginx 的前景也非常看好。未来有望和Lighttpd 一道,取代Apache 的地位。

参考资料

网站类

Nginx的英文wiki网站: http://wiki.codemongers.com/NginxModules

快速上手教程


Nginx 的安装和配置比Lighttpd 还要简单,下载Nginx 的源代码解压缩,执行:

./configure
make && make install

就可以把Nginx 安装到/usr/local 目录下面了。

Nginx 的配置文件是 /usr/local/conf/nginx.conf。

这个配置文件默认不需要修改就可以启动了,如果需要自己定制修改,可以参考文档的说明。启动Nginx:

/usr/local/bin/sbin/nginx


就可以了。

版本信息

Nginx 目前也有两个版本:0.5.x 版本是稳定版本,推荐目前的生产环境来使用;0.6.x版本是开发版本,增加了很多新的功能特性,但是不推荐在生产环境当中使用。就笔者自己测试来看,0.5.x 版本的性能已经非常好了,0.6.x 版本也比较稳定,都可以使用。

社区视角

Nginx 和Lighttpd 是两个各有特色的轻量级Web 服务器,也是目前最有前途的两个候选者。Nginx 的优点在于性能更好、功能更简单、配置更容易,而Lighttpd 的优点在于功能支持更加丰富、文档更加丰富、用户群体更大。

作者介绍

张远:Unix 网络管理员,八年从业经验,了解Unix 平台的开源软件,在大规模网站部署和调优,特别是Web 服务器方面有丰富的实践经验。

相关文章
|
Web App开发 安全 应用服务中间件
|
Web App开发 缓存 应用服务中间件
|
22天前
|
运维 前端开发 应用服务中间件
LNMP详解(八)——Nginx动静分离实战配置
LNMP详解(八)——Nginx动静分离实战配置
24 0
|
1月前
|
应用服务中间件 nginx
Nginx中如何配置中文域名?
Nginx中如何配置中文域名?
40 0
|
21天前
|
前端开发 应用服务中间件 nginx
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
85 0
|
1天前
|
安全 应用服务中间件 网络安全
SSL原理、生成SSL密钥对、Nginx配置SSL
现在,你的Nginx虚拟主机应该已经配置了SSL,可以通过HTTPS安全访问。确保在生产环境中使用有效的SSL证书来保护通信的安全性。
7 0
|
4天前
|
域名解析 缓存 负载均衡
Nginx正向代理域名的配置
Nginx正向代理域名的配置
|
4天前
|
前端开发 JavaScript 应用服务中间件
修改Jeecg-boot context-path(附加图片+Nginx配置)
修改Jeecg-boot context-path(附加图片+Nginx配置)
12 0
|
15天前
|
应用服务中间件 nginx
nginx进行反向代理的配置
在Nginx中设置反向代理的步骤:编辑`/etc/nginx/nginx.conf`,在http段加入配置,创建一个监听80端口、服务器名为example.com的虚拟主机。通过`location /`将请求代理到本地3000端口,并设置代理头。保存配置后,使用`sudo nginx -s reload`重载服务。完成配置,通过example.com访问代理服务器。
22 0
|
16天前
|
应用服务中间件 网络安全 nginx
nginx配置https访问
nginx配置https访问
26 0