Nginx简介
1、Nginx的优点:
(1)高并发(处理静态小文件),静态1-2w。
(2)占用资源少,2w并发,开10个线程服务,内存消耗几百M。
(3)功能种类比较多(web,cache,proxy),每一个功能都不是特别强。
(4)支持epoll模型,使得Nginx可以支持高并发。
(5)Nginx配置动态服务和apache的区别。
(6)利用Nginx可以对IP限速,可以限制连接数。
(7)配置更简单,更灵活。
2、Nginx的应用场合
(1)静态服务器(图片,视频服务),html、js、css、flv。并发1-3w--静态并发。
国内只有两款静态服务器,一款是Nginx,另一款是lighttpd(百度贴吧)。
(2)动态服务,nginx+fastcgi的方式运行php(或jsp)。并发500-1500--动态并发。
apache+php,lighttpd+php
(3)反向代理,负载均衡。日PV2000w以下,都可以直接用Nginx做代理。
(4)缓存服务
3、Nginx的特点:
(1)基于异步IO模型,性能强,能够支持上万并发。
(2)对小文件支持很好,性能很高(限静态小文件)
(3)扩展库必须编译进主程序
(4)消耗系统资源比较低
4、小结:
处理静态小文件(小于1M),nginx 和 lighttpd 比 apache 更有优势,lighttpd最强。
处理动态数据时,三者的差距不大,apache更有优势一点,这是因为处理动态数据的能力取决于php和后端数据库的提供服务能力。
5、apache与nginx对比:
nginx使用最新的epoll(linux 2.6内核)和kqueue网络I/O模型。
apache使用的是传统的select模型。
例子:传统select版宿管会带着你的朋友每个房间去找,直到找到你位置。
epoll宿管会提前登记每个学生的宿舍号,告诉你的朋友你在哪个房间即可。
6、nginx虚拟主机
一个server标签就是一个虚拟主机
(1)基于域名的虚拟主机,通过域名来区分虚拟主机 ==>应用:外部网站
(2)基于端口的虚拟主机,通过端口来区分虚拟主机 ==>应用:公司每部网站,外部网站的后台。
(3)基于IP的虚拟主机,几乎不用,不支持 ifconfig 别名,配置文件可以。