一,Nginx的简介
1,nginx是什么?
nginx是一个高性能的http服务器和反向代理服务器,同时也是一个IMAP,SMTP以及POP3服务器。
nginx是俄罗斯公司开发的,以稳定性,丰富的功能集,示例配置文件和低系统资源消耗而闻名。
2,nginx的特点
(1),nginx转为性能优化而开发,效率极高。
(2),nginx具有极高的稳定性,可以抵挡传说中的Ddos攻击。apache同时运行200个以上的进程的时候,响应速度就会变得很慢。nginx采用分阶段资源分配策略,使对CPU和内存的使用率大大降低。
(3),nginx支持热部署,甚至可以在nginx运行的时候,对nginx进行升级。
(4),nginx采用master-slave模型,能够充分利用SMP--对称多处理 (Symmetrical Multi-Processing)技术 的优势。能够减少磁盘IO的阻塞延迟以及限制进程的连接数。
(5),nginx代码质量非常高,编写非常规范,手法非常成熟,编写扩展变得十分容易。
二,nginx的重要功能介绍:负载均衡
一,nginx负载均衡基础知识:
1,轮询,默认的负载均衡模式,每个请求按照时间的先后顺序依次分发给服务器组。
2,weight(weight默认为1,值越大,权重越大,收到请求越多)指定轮询几率,用于后端服务器性能不均的情况,性能好的服务器多一些请求,反之亦然。
3,ip-hash,每一个ip做hash,然后请求打到一个服务器上,这样一个ip就会只访问固定的一台服务器,这样不用服务器之间同步session。
4,fair,按照服务器的响应时间分配请求,响应时间短的优先分配请求。
5,url—hash。
三,nginx的简单优化
1,减少nginx编译后的文件大小,,默认是debug模式,编译完好几M,去掉debug之后编译完几百k。
2,修改nginx的header伪装服务器。
3,为特定的cpu指定cpu编译类型优化。
4,Tcmalloc 优化。
5,内核参数优化。