Nginx高性能WEB服务器系列v1Word下载.doc

上传人:b****1 文档编号:13161829 上传时间:2022-10-07 格式:DOC 页数:78 大小:1.13MB
下载 相关 举报
Nginx高性能WEB服务器系列v1Word下载.doc_第1页
第1页 / 共78页
Nginx高性能WEB服务器系列v1Word下载.doc_第2页
第2页 / 共78页
Nginx高性能WEB服务器系列v1Word下载.doc_第3页
第3页 / 共78页
Nginx高性能WEB服务器系列v1Word下载.doc_第4页
第4页 / 共78页
Nginx高性能WEB服务器系列v1Word下载.doc_第5页
第5页 / 共78页
点击查看更多>>
下载资源
资源描述

Nginx高性能WEB服务器系列v1Word下载.doc

《Nginx高性能WEB服务器系列v1Word下载.doc》由会员分享,可在线阅读,更多相关《Nginx高性能WEB服务器系列v1Word下载.doc(78页珍藏版)》请在冰豆网上搜索。

Nginx高性能WEB服务器系列v1Word下载.doc

17.Nginx构建安全站点HTTPS架构 58

Ø

加载SSL支持的Nginx并使用私钥时去除口令:

61

18.Nginx均衡TCP协议服务器案例 63

19.构建企业级Nginx+Keepalived集群架构 65

20.企业Nginx+Keepalived双主架构案例实战 72

1.Nginx入门简介

WEB服务器也称为WWW(WORLDWIDEWEB)服务器,主要功能是提供网上信息浏览服务。

WWW是 

Internet的多媒体信息查询工具,是Internet上近年才发展起来的服务,也是发展最快和目前用的最广泛的服务。

正是因为有了WWW工具,才使得近年来Internet迅速发展,且用户数量飞速增长。

Nginx("

enginex"

)是一个高性能的HTTP和 

反向代理 

服务器,也是一个IMAP/POP3/SMTP 

代理服务器。

Nginx是由IgorSysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日。

其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。

它已经在众多流量很大的俄罗斯网站上使用了很长时间,这些网站包括Yandex、Mail.Ru、VKontakte,以及Rambler。

据Netcraft统计,在2012年8月份,世界上最繁忙的网站中有11.48%使用Nginx作为其服务器或者代理服务器。

目前互联网主流公司360、百度、新浪、腾讯、阿里等,目前中国互联网企业70%以上公司都在使用nginx作为自己的web服务器。

Nginx特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。

Nginx由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客户端请求映射到一个locationblock(location是Nginx配置中的一个指令,用于URL匹配),而在这个location中所配置的每个指令将会启动不同的模块去完成相应的工作。

Nginx相对于Apache优点:

1)高并发响应性能非常好,官方Nginx处理静态文件并发5w/s

2)反向代理性能非常强。

(可用于负载均衡)

3)内存和cpu占用率低。

(为Apache的1/5-1/10)

4)对后端服务有健康检查功能。

5)支持PHPcgi方式和fastcgi方式。

6)配置代码简洁且容易上手。

2.Nginx工作原理及安装配置

Nginx的模块从结构上分为核心模块、基础模块和第三方模块:

核心模块:

HTTP模块、EVENT模块和MAIL模块

基础模块:

HTTPAccess模块、HTTPFastCGI模块、HTTPProxy模块和HTTPRewrite模块,

第三方模块:

HTTPUpstreamRequestHash模块、Notice模块和HTTPAccessKey模块。

Nginx的高并发得益于其采用了epoll模型,与传统的服务器程序架构不同,epoll是linux内核2.6以后才出现的。

Nginx采用epoll模型,异步非阻塞,而Apache采用的是select模型:

Select特点:

select选择句柄的时候,是遍历所有句柄,也就是说句柄有事件响应时,select需要遍历所有句柄才能获取到哪些句柄有事件通知,因此效率是非常低。

epoll的特点:

epoll对于句柄事件的选择不是遍历的,是事件响应的,就是句柄上事件来就马上选择出来,不需要遍历整个句柄链表,因此效率非常高。

接下来正式安装Nginx,首先需要安装pcre库。

#安装pcre支持rewrite库,也可以安装源码,注*安装源码时,指定pcre路径为解压

源码的路径,而不是编译后的路径,否则会报错

(make[1]:

 

*** 

[/usr/local/pcre/Makefile] 

Error 

127 

错误)

yuminstallpcre-develpcre-y

#下载Nginx源码包

cd/usr/src

wget-chttp:

//nginx.org/download/nginx-1.6.2.tar.gz

#解压Nginx源码包

tar-xzfnginx-1.6.2.tar.gz

#进入解压目录,然后sed修改Nginx版本信息为WS

cdnginx-1.6.2;

sed-i-e'

s/1.6.2//g'

-e'

s/nginx\//WS/g'

-e

'

s/"

NGINX"

/"

WS"

/g'

src/core/nginx.h

#预编译Nginx

useraddwww;

./configure--user=www--group=www--prefix=/usr/local/nginx--with-

http_stub_status_module--with-http_ssl_module

#.configure预编译成功后,执行make命令进行编译

make

#make执行成功后,执行makeinstall正式安装

makeinstall

#自此Nginx安装完毕

/usr/local/nginx/sbin/nginx-t检查nginx配置文件是否正确,返回OK即正确。

[root@localhost~]#/usr/local/nginx/sbin/nginx-t

nginx:

theconfigurationfile/usr/local/nginx/conf/nginx.confsyntaxisok

configurationfile/usr/local/nginx/conf/nginx.conftestissuccessful

[root@localhost~]#

然后启动nginx,/usr/local/nginx/sbin/nginx回车即可。

查看进程是否已启动:

[root@localhost~]#ps-ef|grepnginx

nobody5381302850May16?

00:

04:

31nginx:

workerprocess

root30285102014?

00:

00nginx:

masterprocess/usr/local/nginx/sbin/nginx

root3226032220012:

34pts/000:

00grepnginx

3.Nginx常用命令管理及升级

查看nginx进程

ps-ef|grepnginx

说明:

nginx的进程由主进程和工作进程组成。

启动nginx

nginx

启动结果显示nginx的主线程和工作线程,工作线程的数量跟nginx.conf中的配置参数worker_processes有关。

平滑启动nginx

kill-HUP`cat/var/run/nginx.pid`

或者

nginx-sreload

其中进程文件路径在配置文件nginx.conf中可以找到。

平滑启动的意思是在不停止nginx的情况下,重启nginx,重新加载配置文件,启动新的工作线程,完美停止旧的工作线程。

完美停止nginx

kill-QUIT`cat/var/run/nginx.pid`

快速停止nginx

kill-TERM`cat/var/run/nginx.pid`

kill-INT`cat/var/run/nginx.pid`

完美停止工作进程(主要用于平滑升级)

kill-WINCH`cat/var/run/nginx.pid`

强制停止nginx

pkill-9nginx

检查对nginx.conf文件的修改是否正确

nginx-t-c/etc/nginx/nginx.conf或者nginx-t

停止nginx的命令

nginx-sstop或者pkillnginx

查看nginx的版本信息

nginx-v

查看完整的nginx的配置信息

nginx-V

Nginx升级方法:

下载所需版本的Nginx

wgethttp:

//www.nginx.org/download/nginx-1.4.2.tar.gz

获取旧版本nginx的configure选项

/usr/local/nginx/sbin/nginx-V

编译新版本的nginx

tar-xvfnginx-1.4.2.tar.gz

cdnginx-1.4.2

./configure--prefix=/usr/local/nginx--user=www--group=www--with-http_stub_status_module--with-http_ssl_module

make

备份旧版本的nginx可执行文件,复制新版本的nginx这行文件

mv/usr/local/nginx/sbin/nginx/usr/local/nginx/sbin/nginx.old

cpobjs/nginx/usr/local/nginx/sbin/

测试新版本nginx是否正常

/usr/local/nginx/sbin/nginx-t

平滑重启升级nginx

kill–USR2`cat/usr/local/nginx/log/nginx.pid`

旧版本Nginx的pid变为oldbin,这是旧版本和新版本的nginx同时运行,过一段时间等就nginx处理完用户请求后,执行下面操作

从容关闭旧版本的Nginx进程

kill-WINCH`cat/usr/local/nginx/log/nginx.oldbin`

决定是否升级到新版的nginx

kill–HUP`cat/usr/local/nginx/log/nginx.oldbin`##nginx在不重载配置文件启动工作进程

kill–QUIT`cat/usr/local/n

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 环境科学食品科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1