
Nginx(发音为 [engine x])是有俄罗斯人Igor Sysoev建立的项目,基于BSD许可.
它本身是一个高速的http服务器,具有很优秀的性能表现,同时也可以作为IMAP/POP3的代理服务器.俄罗斯的一些大网站已经使用它超过两年多了,一直表现不凡.
Nginx被安装在服务器(192.168.8.84)上的 /usr/local/nginx 目录下. "conf/" 目录下存放配置文件, "html/" 存放默认的404,50x等错误文件, "logs/" 目录下存放着所有的日志, "sbin/" 目录下只有一个文件,即主程序文件 nginx.
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
或者
/usr/local/nginx/sbin/nginx
都可以,Nginx自动进入后台作为daemon程序运行.
重启Nginx可以用 "kill -HUP" 的方式,也可以先杀掉进程,然后重新启动;推荐第一种,可以避免出现短暂的无法访问情况.
http://192.168.8.84/NginxStatus
需要先输入http auth的用户和密码 yejr/yejr,然后就可以看到类似如下的信息:
Active connections: 328
server accepts handled requests
9309 8982 28890 Reading: 1 Writing: 3 Waiting: 324
第一行表示目前活跃的连接数
第三行的第三个数字表示Nginx运行到当前时间接受到的总请求数
第四行看不懂 :(
access log 为 logs/imysql.cn_access.log,它的格式比较容易读懂,不再细述.
error log为 logs/error.log,主要关注错误日志,即 "[error]" 和 "[crit]" 级别的日志.
由于对Nginx的性能还不是很有把握,以前也没有用过,因此需要多监控系统状态.包括:
1.) 运行 top/vmstat/ps 等命令,来定期检查系统负载情况
2.) 通过上面的Nginx web接口来了解Nginx的运行状况,尤其是"Active connections"这个参数,当前Nginx设置的上限是768(配置参数: "worker_connections 768;"),如果发现这个数值快要达到上限了,就修改一下配置文件,调高该参数,然后重启.
3.) 监控Nginx的error log
./configure --prefix=/usr/local/nginx --with-openssl=/usr/include --with-pcre=/usr/include/pcre/ --with-http_stub_status_module --without-http_memcached_module --without-http_fastcgi_module --without-http_rewrite_module --without-http_map_module --without-http_geo_module --without-http_autoindex_module