##LNMP(Linux Nginx MySQL Php)
a) 由来:
Nginx (Engine x) ,俄罗斯人开发的,开源的WWW服务软件 一共780K
本身是一款静态(HTML,JS,CSS ,JSP等)WWW软件
b) 优点:
0.配置简单,更灵活
1.高并发(静态小文件)
2.占用资源少,2W并发10个线程,内存消耗几百兆
3.功能种类比较多(web ,cache,proxy),每个功能都不是特别强
4.支持epoll 模型 使得NGINX 可以支持高并发
5.nginx配合动态服务和apache有区别
6.利用nginx 可以对IP限速,可以限制链接数
c) 使用平台: UNIX,LIUNX,windos等
d) Nginx应用场合
1.静态服务器(图片,视频服务),另一个lighttpd. 并发:1-3W
HTML,js,css,flv等
2. 动态服务,nginx+fastcgi的方式运行php 并发:根据数据库和PHP服务(500-1500)
apache+php lighttpd+fcgi php
3. 反向代理,负载均衡 日PV2000W一下,可以直接用Nginx做代理
方向代理,代替外边的客户向服务器访问
正向代理:客户端请求新浪网站,路由器(缓存服务)代理请求新浪的网站,然后在本地放一份,然后把结果给客户端 。
haproxy,F5,a10
4.缓存服务。SQUID VARNISH
e) Nginx和其他web服务器的对比
1) apache
1.2.2版本非常稳定强大
2.Prefork 模式取消了进程创建开销,性能很高
3.处理动态业务数据时,因关联到后端的引擎和数据库
4.高并发时消耗系统资源相对比较多一些
5.基于传统的select模型
6.扩展库, DSOapxs
7.功能多,更稳定,更安全 ,插件也多
2) Nginx
1. 基于异步IO模型(epoll,kquene),性能强,能够支持上万并发
2.对小文件支持很好,性能很高(限静态小文件)
3.代码优美,扩展库必须编译进主程序
4.消耗系统资源比较低
3)Lighttpd(百度贴吧,豆瓣)
1.基于异步IO模型,性能和Nginx相近
2.扩展库是so模式,比Nginx要灵活
3. 全球使用率比较低,安全性没有上面两个好
4. 同过插件(mod_secdownload)可实现文件URL地址加密
4)性能对比测试
1.静态数据性能对比
小结:处理静态小文件(小于1M),nginx和lighttpd 比apache更有优势,lighttpd最强
2.动态数据性能对比
小结:当处理动态数据时,三者的差距不大,从测试结果来看,apache更有优势,这是因为处理动态数据的能力取决于Php h和后端数据库的提供服务能力。 php引擎支持的并发参考值300-1000,java引擎并发300-1000,数据库的并发300-1000
<!-- 为什么Nginx 的总体性能比apache高?
因为nginx采用的epoll网络I/o 模型 apache使用的是传统的select 模型
-->
**建议:
静态业务:高并发,采用nginx或lighttpd,根据自己的掌握程度或公司的要求。
动态业务:采用nginx和apache均可
既有静态业务又有动态业务:Nginx或Apache 不要多选要单选
最终建议:对外的业务 NGINX 对内的业务 APACHE
**
5)检查语法启动nginx
/application/nginx/sbin/nginx -t
/application/nginx/sbin/nginx
lsof -i :80 查看端口
curl IP 地址
6) 启动故障排查
nginx:[emerg] getpwnam("nginx") failed
解答: useradd nginx -s /sbin/nologin -M
故障排查思想方法:
1) ping 服务器IP 物理通不通
2) telnet IP服务端口 浏览器到web服务器通不通
3) wget 123.0.0.1 模拟用户访问,排除http服务自身问题
4) 服务器本地curl IP WEB服务开没开
7) 配置一个站点
apache 默认站点目录的参数
Document
8) nginx基本配置
1.Nginx core modules (必需的)
main events
9) 日志切割
cd /server/scripts/
vi cut_nginx_log.sh
cd /application/nginx/logs &&\
mv www_access.log www_access_$(date+%F -d -1day).log
/application/nginx/sbin/nginx -s reload
10)http状态码
200正常
301永久跳转
403禁止访问 服务器拒绝请求
404 找不到页面
500 内部服务器出错了
502 负载均衡,没有按照http协议返回
503 服务当前不可用 可能因为超载和停机维护
504 网关超时
本文出自 “Doyle” 博客,请务必保留此出处http://conandoyle.blog.51cto.com/11462365/1766958
原文地址:http://conandoyle.blog.51cto.com/11462365/1766958