认识nginx
2016-06-21 18:26
441 查看
1.Nginx是什么?
Nginx是一个高性能的HTTP Server和代理服务器软件。因为其高并发、占用资源少、及具备丰富功能等级特性而闻名。 Nginx软件可以运行在UNIX,GNU/Linux,BSD,Mac OSX,Solaris,以及Microsoft Windows等级操作系统中。随着Nginx在很多大型网站的稳定高效运行,nginx近年来逐渐被越来越多的大中小型网站站所使用。Nginx软件在世界上使用的排名:
Web server排行 根据上图,我们可以看出,到目前为止,Nginx已经成为世界上使用数量排名第二的Web服务软件,市场占有率达30.4%,并呈持续逐渐递增的趋势,有可能取代Apache的位置。 上述图来源:https://w3techs.com/technologies/overview/web_server/all
2.Nginx的特点及应用场合
Nginx特点:
Nginx是一个高性能的Web和反向代理服务器软件,它具有很多优越的特性,作为Web服务器,和Apache相比,Nginx能够支持更多的并发连接,而占用的资源却更少,效率很高。
作为负载均衡服务器,Nginx可以作为HttpServer或DB等服务的代理服务器。
Nginx同时也是一个优秀的邮件代理服务软件,还可以作为缓存服务器使用,相当于专业的缓存软件,如squid。
Nginx的安装简单,配置文件简洁、配置灵活。
目前国内部分门户网站已经开始或已经在使用Nginx,如网易、新浪、赶集、人人等。近年来,Nginx在国内互闻网领域日趋火热,越来越多的网站开始使用Nginx。
Nginx优点总结:
ü 高并发:能支持1-2万甚至更多的并发连接。ü 内存消耗少:在3万并发连接下,开启的10个Nginx进程消耗不到200M内存。ü 可以做HTTP反向代理,即负载均衡功能,相当于专业的Haproxy软件或LVS的功能。ü 内置对RS服务器健康检查功能:如果Nginx Proxy后端某台Web服务器宕机,不会影响前端的访问,这个功能还比较弱,需要后续改进。ü 通过cach插件可以实现类squid等专业的缓存软件实现的功能。Nginx的主要应用场合
ü 使用Nginx结合FastCG运行PHP、JSP、Perl等程序。ü 使用Nginx作反向代理、负载均衡、规则过滤。ü 使用Nginx运行静态HTML页、小图片等。ü 使用Nginx加cache插件实现对web服务器缓存功能。提示:近年,网上热抄Nginx webserver,经过作者测试,对于提供静态小文件html页、图片等服务,Apache确实要比Nginx逊色一些,但在结合PHP引擎提供php服务及其它很多方面并不比Nginx差,而apahce的稳定性相对要好些。建议读者在选择时,根据具体的业务需求来选择,不要盲从。
Nginx和其他Web服务器的对比主流web服务产品对比说明Apache:
ü 2.2版本非常稳定强大,据官方说明,其2.4版本性能超强。ü Prefork模式取消了进程创建开销,性有很高。ü 处理动态业务数据时,因关联到后端的引擎和数据库,瓶颈不在于apache本身。ü 高并发时消耗系统资源相对比较多一些。Nginx:
ü 基于异步IO模型,性能强,能够支持上万并发。ü 对小文件支持很好,性能很高。ü 代码优美,扩展库必须编译进主程序。ü 消耗系统资源比较低。Web服务产品性能对比测试
静态数据性能对比:
处理静态小文件,nginx比apache更有优势。
动态数据性能对比:
当处理动态数据时,两者差距不太大,apache更有优势一点。这是因为处理动态数据的能力取决于php和后端数据库的提供服务能力。也就是瓶颈不在web服务器上。一般PHP支持的并发参考值300-1000,java引擎并发300-1000。
为什么Nginx的总体性能比Apache高?
Nginx使用最新的epoll(Linux 2.6内核)和kqueue(freebsd)网络I/O模型,而Apache则使用的是传统的select模型。目前Linux下能够承受高并发访问的Squid、Memcached都采用的是epoll网络I/O模型。
处理大量连接的读写,Apache所采用的select网络I/O模型比较低效。如何正确选择web服务器?
虽然国内很多人都在使用Nginx,但是apahce这个web server,同样非常强大实用,尤其是apache仍旧是最广泛使用的web服务器,且阿里集团,百度等大公司仍在使用apache,而且apache到目前为止仍是世界上最广泛应用的web servber。在实际工作中,我们要根据业和需求来选择适合的业务服务器,在满足需求的前提下,可以选择自己最擅长的软件,然后掌握了新的好的软件后,在逐步替换,切记不要盲从选择使用,最终导致自己无法控制的恶果。
静态业务:采用nginx
动态业务:采用nginx和apache均可
动态业务可以由前端代理,根据页面元素的类型,向后转发相应的且务器进行处理。
如果并发不是很大,又对apache很熟悉,采用apache也是可以的,apache2.4版本也很强大,并发连接也有所增加,见后央的压力测试。
Nginx是一个高性能的HTTP Server和代理服务器软件。因为其高并发、占用资源少、及具备丰富功能等级特性而闻名。 Nginx软件可以运行在UNIX,GNU/Linux,BSD,Mac OSX,Solaris,以及Microsoft Windows等级操作系统中。随着Nginx在很多大型网站的稳定高效运行,nginx近年来逐渐被越来越多的大中小型网站站所使用。Nginx软件在世界上使用的排名:
Web server排行 根据上图,我们可以看出,到目前为止,Nginx已经成为世界上使用数量排名第二的Web服务软件,市场占有率达30.4%,并呈持续逐渐递增的趋势,有可能取代Apache的位置。 上述图来源:https://w3techs.com/technologies/overview/web_server/all
2.Nginx的特点及应用场合
Nginx特点:
Nginx是一个高性能的Web和反向代理服务器软件,它具有很多优越的特性,作为Web服务器,和Apache相比,Nginx能够支持更多的并发连接,而占用的资源却更少,效率很高。
作为负载均衡服务器,Nginx可以作为HttpServer或DB等服务的代理服务器。
Nginx同时也是一个优秀的邮件代理服务软件,还可以作为缓存服务器使用,相当于专业的缓存软件,如squid。
Nginx的安装简单,配置文件简洁、配置灵活。
目前国内部分门户网站已经开始或已经在使用Nginx,如网易、新浪、赶集、人人等。近年来,Nginx在国内互闻网领域日趋火热,越来越多的网站开始使用Nginx。
Nginx优点总结:
ü 高并发:能支持1-2万甚至更多的并发连接。ü 内存消耗少:在3万并发连接下,开启的10个Nginx进程消耗不到200M内存。ü 可以做HTTP反向代理,即负载均衡功能,相当于专业的Haproxy软件或LVS的功能。ü 内置对RS服务器健康检查功能:如果Nginx Proxy后端某台Web服务器宕机,不会影响前端的访问,这个功能还比较弱,需要后续改进。ü 通过cach插件可以实现类squid等专业的缓存软件实现的功能。Nginx的主要应用场合
ü 使用Nginx结合FastCG运行PHP、JSP、Perl等程序。ü 使用Nginx作反向代理、负载均衡、规则过滤。ü 使用Nginx运行静态HTML页、小图片等。ü 使用Nginx加cache插件实现对web服务器缓存功能。提示:近年,网上热抄Nginx webserver,经过作者测试,对于提供静态小文件html页、图片等服务,Apache确实要比Nginx逊色一些,但在结合PHP引擎提供php服务及其它很多方面并不比Nginx差,而apahce的稳定性相对要好些。建议读者在选择时,根据具体的业务需求来选择,不要盲从。
Nginx和其他Web服务器的对比主流web服务产品对比说明Apache:
ü 2.2版本非常稳定强大,据官方说明,其2.4版本性能超强。ü Prefork模式取消了进程创建开销,性有很高。ü 处理动态业务数据时,因关联到后端的引擎和数据库,瓶颈不在于apache本身。ü 高并发时消耗系统资源相对比较多一些。Nginx:
ü 基于异步IO模型,性能强,能够支持上万并发。ü 对小文件支持很好,性能很高。ü 代码优美,扩展库必须编译进主程序。ü 消耗系统资源比较低。Web服务产品性能对比测试
静态数据性能对比:
处理静态小文件,nginx比apache更有优势。
动态数据性能对比:
当处理动态数据时,两者差距不太大,apache更有优势一点。这是因为处理动态数据的能力取决于php和后端数据库的提供服务能力。也就是瓶颈不在web服务器上。一般PHP支持的并发参考值300-1000,java引擎并发300-1000。
为什么Nginx的总体性能比Apache高?
Nginx使用最新的epoll(Linux 2.6内核)和kqueue(freebsd)网络I/O模型,而Apache则使用的是传统的select模型。目前Linux下能够承受高并发访问的Squid、Memcached都采用的是epoll网络I/O模型。
处理大量连接的读写,Apache所采用的select网络I/O模型比较低效。如何正确选择web服务器?
虽然国内很多人都在使用Nginx,但是apahce这个web server,同样非常强大实用,尤其是apache仍旧是最广泛使用的web服务器,且阿里集团,百度等大公司仍在使用apache,而且apache到目前为止仍是世界上最广泛应用的web servber。在实际工作中,我们要根据业和需求来选择适合的业务服务器,在满足需求的前提下,可以选择自己最擅长的软件,然后掌握了新的好的软件后,在逐步替换,切记不要盲从选择使用,最终导致自己无法控制的恶果。
静态业务:采用nginx
动态业务:采用nginx和apache均可
动态业务可以由前端代理,根据页面元素的类型,向后转发相应的且务器进行处理。
如果并发不是很大,又对apache很熟悉,采用apache也是可以的,apache2.4版本也很强大,并发连接也有所增加,见后央的压力测试。
相关文章推荐
- Seafile Server本地权限提升漏洞(CVE-2014-5443)
- 从USB安装Ubuntu Server 10.04.3 图文详解
- 应用领航:盘点那些年我们一起追过的OS
- 无奇不有!盘点各国自己开发的操作系统
- 使用zabbix监控Nginx活动状态--Part1
- 高效访问Internet-启用ISA Server的缓存
- 微软宣布任命纳德拉为CEO,盖茨辞去董事长职位
- 微软新CEO 纳德拉:这个行业不推崇传统,只尊重创新
- windows server域用户提升到本地更高权限组中的方法
- 使用命令修改注册表键值及权限
- Microsoft Windows Vista 简体中文企业版 MVL DVD IMG 32-bit(1.9GB)
- 完美解决SQL Server 安装问题:以前的某个程序安装已在安装计算机上创建挂起的文件操作
- IIS 错误 Server Application Error 详细解决方法
- 在WINXP系统上安装SQL Server企业版的方法
- SQL Server 存储过程的分页
- SQL Server复制需要有实际的服务器名称才能连接到服务器
- SQL Server 2000向SQL Server 2008 R2推送数据图文教程
- SQL server 表操作介绍
- SQL Server 2000 注入防护大全(二)
- SQL Server 2000 注入防护大全(一)