Soumettre la recherche
Mettre en ligne
ByPat博客出品-高性能Web服务器nginx及相关新技术的应用
•
Télécharger en tant que PPT, PDF
•
1 j'aime
•
1,163 vues
R
redhat9
Suivre
Technologie
Signaler
Partager
Signaler
Partager
1 sur 53
Télécharger maintenant
Recommandé
高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践
Frank Cai
高性能Web服务器nginx及相关新技术的应用
高性能Web服务器nginx及相关新技术的应用
redhat9
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
cachowu
Nginx+常见应用技术指南
Nginx+常见应用技术指南
andy54321
高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践
rewinx
OpenResty/Lua Practical Experience
OpenResty/Lua Practical Experience
Ho Kim
lua & ngx_lua 的介绍与应用
lua & ngx_lua 的介绍与应用
hugo
使用Nginx轻松实现开源负载均衡——对外版
使用Nginx轻松实现开源负载均衡——对外版
pigso
Recommandé
高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践
Frank Cai
高性能Web服务器nginx及相关新技术的应用
高性能Web服务器nginx及相关新技术的应用
redhat9
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
cachowu
Nginx+常见应用技术指南
Nginx+常见应用技术指南
andy54321
高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践
rewinx
OpenResty/Lua Practical Experience
OpenResty/Lua Practical Experience
Ho Kim
lua & ngx_lua 的介绍与应用
lua & ngx_lua 的介绍与应用
hugo
使用Nginx轻松实现开源负载均衡——对外版
使用Nginx轻松实现开源负载均衡——对外版
pigso
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
Cary Yang
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
guest2d0fe3
Ansible 101
Ansible 101
YI-CHING WU
Kafka in Depth
Kafka in Depth
YI-CHING WU
Perl在nginx里的应用
Perl在nginx里的应用
琛琳 饶
康盛创想项目部Linux 服务器部署标准(最新版)
康盛创想项目部Linux 服务器部署标准(最新版)
Yiwei Ma
Hadoop基线选定
Hadoop基线选定
baggioss
Monitor is all for ops
Monitor is all for ops
琛琳 饶
Docker進階探討
Docker進階探討
國昭 張
独爽不如众乐
独爽不如众乐
Zheng Biao
Traffic server overview
Traffic server overview
qianshi
Apache trafficserver
Apache trafficserver
Din Dindin
Deployment with Capistrano
Deployment with Capistrano
旭 張
智能Dns工作流程及配置
智能Dns工作流程及配置
Yiwei Ma
DNS协议与应用简介
DNS协议与应用简介
琛琳 饶
應用Ceph技術打造軟體定義儲存新局
應用Ceph技術打造軟體定義儲存新局
Alex Lau
基于OpenResty的百万级长连接推送
基于OpenResty的百万级长连接推送
OpenRestyCon
ByPat博客出品Lvs+keepalived
ByPat博客出品Lvs+keepalived
redhat9
Bypat博客出品-利用cent os快速构建自己的发行版-进阶版v1.1
Bypat博客出品-利用cent os快速构建自己的发行版-进阶版v1.1
redhat9
Bypat博客出品-利用cent os快速构建自己的发行版
Bypat博客出品-利用cent os快速构建自己的发行版
redhat9
高性能Web服务器nginx及相关新技术的应用
高性能Web服务器nginx及相关新技术的应用
redhat9
Bypat博客出品-手把手教你如何建立自己的linux系统lfs速成手册
Bypat博客出品-手把手教你如何建立自己的linux系统lfs速成手册
redhat9
Contenu connexe
Tendances
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
Cary Yang
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
guest2d0fe3
Ansible 101
Ansible 101
YI-CHING WU
Kafka in Depth
Kafka in Depth
YI-CHING WU
Perl在nginx里的应用
Perl在nginx里的应用
琛琳 饶
康盛创想项目部Linux 服务器部署标准(最新版)
康盛创想项目部Linux 服务器部署标准(最新版)
Yiwei Ma
Hadoop基线选定
Hadoop基线选定
baggioss
Monitor is all for ops
Monitor is all for ops
琛琳 饶
Docker進階探討
Docker進階探討
國昭 張
独爽不如众乐
独爽不如众乐
Zheng Biao
Traffic server overview
Traffic server overview
qianshi
Apache trafficserver
Apache trafficserver
Din Dindin
Deployment with Capistrano
Deployment with Capistrano
旭 張
智能Dns工作流程及配置
智能Dns工作流程及配置
Yiwei Ma
DNS协议与应用简介
DNS协议与应用简介
琛琳 饶
應用Ceph技術打造軟體定義儲存新局
應用Ceph技術打造軟體定義儲存新局
Alex Lau
基于OpenResty的百万级长连接推送
基于OpenResty的百万级长连接推送
OpenRestyCon
Tendances
(17)
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
使用Nginx轻松实现开源负载均衡
Ansible 101
Ansible 101
Kafka in Depth
Kafka in Depth
Perl在nginx里的应用
Perl在nginx里的应用
康盛创想项目部Linux 服务器部署标准(最新版)
康盛创想项目部Linux 服务器部署标准(最新版)
Hadoop基线选定
Hadoop基线选定
Monitor is all for ops
Monitor is all for ops
Docker進階探討
Docker進階探討
独爽不如众乐
独爽不如众乐
Traffic server overview
Traffic server overview
Apache trafficserver
Apache trafficserver
Deployment with Capistrano
Deployment with Capistrano
智能Dns工作流程及配置
智能Dns工作流程及配置
DNS协议与应用简介
DNS协议与应用简介
應用Ceph技術打造軟體定義儲存新局
應用Ceph技術打造軟體定義儲存新局
基于OpenResty的百万级长连接推送
基于OpenResty的百万级长连接推送
En vedette
ByPat博客出品Lvs+keepalived
ByPat博客出品Lvs+keepalived
redhat9
Bypat博客出品-利用cent os快速构建自己的发行版-进阶版v1.1
Bypat博客出品-利用cent os快速构建自己的发行版-进阶版v1.1
redhat9
Bypat博客出品-利用cent os快速构建自己的发行版
Bypat博客出品-利用cent os快速构建自己的发行版
redhat9
高性能Web服务器nginx及相关新技术的应用
高性能Web服务器nginx及相关新技术的应用
redhat9
Bypat博客出品-手把手教你如何建立自己的linux系统lfs速成手册
Bypat博客出品-手把手教你如何建立自己的linux系统lfs速成手册
redhat9
Bypat博客出品-服务器运维集群方法总结2
Bypat博客出品-服务器运维集群方法总结2
redhat9
Bypat博客出品-服务器运维集群方法总结3
Bypat博客出品-服务器运维集群方法总结3
redhat9
Bypat博客出品-linux+apache+mysql+php之linux系统安装
Bypat博客出品-linux+apache+mysql+php之linux系统安装
redhat9
En vedette
(8)
ByPat博客出品Lvs+keepalived
ByPat博客出品Lvs+keepalived
Bypat博客出品-利用cent os快速构建自己的发行版-进阶版v1.1
Bypat博客出品-利用cent os快速构建自己的发行版-进阶版v1.1
Bypat博客出品-利用cent os快速构建自己的发行版
Bypat博客出品-利用cent os快速构建自己的发行版
高性能Web服务器nginx及相关新技术的应用
高性能Web服务器nginx及相关新技术的应用
Bypat博客出品-手把手教你如何建立自己的linux系统lfs速成手册
Bypat博客出品-手把手教你如何建立自己的linux系统lfs速成手册
Bypat博客出品-服务器运维集群方法总结2
Bypat博客出品-服务器运维集群方法总结2
Bypat博客出品-服务器运维集群方法总结3
Bypat博客出品-服务器运维集群方法总结3
Bypat博客出品-linux+apache+mysql+php之linux系统安装
Bypat博客出品-linux+apache+mysql+php之linux系统安装
Similaire à ByPat博客出品-高性能Web服务器nginx及相关新技术的应用
高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践
self study
Varnish简介
Varnish简介
fangdeng
X64服务器 lamp服务器部署标准 new
X64服务器 lamp服务器部署标准 new
Yiwei Ma
Paveo Tweak WordPress
Paveo Tweak WordPress
Yuancheng Yang
缓存技术浅谈
缓存技术浅谈
Robbin Fan
分享平台构建之旅
分享平台构建之旅
tblanlan
Lamp高性能设计
Lamp高性能设计
锐 张
如何使用 Xhprof 分析網站效能 (真實案例2)
如何使用 Xhprof 分析網站效能 (真實案例2)
Cyril Wang
Migrations 與 Schema 操作
Migrations 與 Schema 操作
Shengyou Fan
Hacking Nginx at Taobao
Hacking Nginx at Taobao
Joshua Zhu
Cent os 安装 subversion
Cent os 安装 subversion
YUCHENG HU
Hbase使用hadoop分析
Hbase使用hadoop分析
baggioss
大型网站架构设计
大型网站架构设计
notes4mark
腾讯大讲堂08 可扩展web架构探讨
腾讯大讲堂08 可扩展web架构探讨
George Ang
Mysql proxy cluster
Mysql proxy cluster
Yiwei Ma
Bypat博客出品-服务器运维集群方法总结
Bypat博客出品-服务器运维集群方法总结
redhat9
-Nginx book
-Nginx book
山城 碧海
8, lamp
8, lamp
ted-xu
Linux集群应用实战 通过lvs+keepalived搭建高可用的负载均衡集群系统(第二讲)
Linux集群应用实战 通过lvs+keepalived搭建高可用的负载均衡集群系统(第二讲)
hik_lhz
台北市研習_LAMP_20140815
台北市研習_LAMP_20140815
fweng322
Similaire à ByPat博客出品-高性能Web服务器nginx及相关新技术的应用
(20)
高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践
Varnish简介
Varnish简介
X64服务器 lamp服务器部署标准 new
X64服务器 lamp服务器部署标准 new
Paveo Tweak WordPress
Paveo Tweak WordPress
缓存技术浅谈
缓存技术浅谈
分享平台构建之旅
分享平台构建之旅
Lamp高性能设计
Lamp高性能设计
如何使用 Xhprof 分析網站效能 (真實案例2)
如何使用 Xhprof 分析網站效能 (真實案例2)
Migrations 與 Schema 操作
Migrations 與 Schema 操作
Hacking Nginx at Taobao
Hacking Nginx at Taobao
Cent os 安装 subversion
Cent os 安装 subversion
Hbase使用hadoop分析
Hbase使用hadoop分析
大型网站架构设计
大型网站架构设计
腾讯大讲堂08 可扩展web架构探讨
腾讯大讲堂08 可扩展web架构探讨
Mysql proxy cluster
Mysql proxy cluster
Bypat博客出品-服务器运维集群方法总结
Bypat博客出品-服务器运维集群方法总结
-Nginx book
-Nginx book
8, lamp
8, lamp
Linux集群应用实战 通过lvs+keepalived搭建高可用的负载均衡集群系统(第二讲)
Linux集群应用实战 通过lvs+keepalived搭建高可用的负载均衡集群系统(第二讲)
台北市研習_LAMP_20140815
台北市研習_LAMP_20140815
ByPat博客出品-高性能Web服务器nginx及相关新技术的应用
1.
Linux 运维手册 ByPat
博客出品 http:// blog.bypat.com
2.
3.
4.
5.
6.
单台 Nginx 支撑了高达
2.8 万的活动并发连接数 2009-09-03 14:30 ,金山游戏《剑侠情缘网络版 3 》临时维护 1 小时,大量玩家上官网,论坛、评论、客服等动态应用 Nginx 服务器集群,每台服务器的 Nginx 活动连接数达到 2.8 万,这是本人遇到的 Nginx 生产环境最高并发值。
7.
8.
9.
金山逍遥网 Nginx 七层负载均衡的应用
10.
Nginx 承担每个机房 Web
负载均衡服务
11.
简单的 Nginx 负载均衡配置①
…… upstream bbs_server_pool { server 192.168.1.15:80 weight=1 max_fails=2 fail_timeout=30s; server 192.168.1.16:80 weight=1 max_fails=2 fail_timeout=30s; server 192.168.1.17:80 weight=1 max_fails=2 fail_timeout=30s; server 192.168.1.18:80 weight=1 max_fails=2 fail_timeout=30s; } …… 在 nginx.conf 配置文件中,用 upstream 指令定义一组反向代理 / 负载均衡后端服务器池。
12.
简单的 Nginx 负载均衡配置②
…… server{ listen 80; server_name bbs.yourdomain.com *.bbs.yourdomain.com; location / { proxy_pass http://bbs_server_pool; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $remote_addr; } access_log off; } ……
13.
14.
Nginx 负载均衡的双机热备
15.
通常情况下的负载均衡 HA 高可用
优点:实现了双机热备、故障自动转移。 缺点:备机服务器处于闲置状态,浪费了硬件资源。
16.
逍遥网 Nginx 负载均衡双机互备
正常情况下,两台 Nginx 负载均衡服务器全部处于活动状态,对外提供服务。
17.
18.
19.
20.
新的 Nginx 双机互备
( 发生故障时 ) 自动接管公网虚拟 IP ,实现故障转移
21.
22.
23.
Nginx 负载均衡 URL
分发
24.
硬件、软件 七层负载均衡对比: NetScaler
与 Nginx
25.
硬件、软件 七层负载均衡对比: NetScaler
与 Nginx
26.
根据不同的 URL 转发到不同服务器
server{ listen 80; server_name abc.domain.com; location ~ ^/admincp.php { proxy_pass http://192.168.1.11; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $remote_addr; } location / { proxy_pass http://php_server_pool; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $remote_addr; } }
27.
Web 相关文件的实时自动同步
28.
29.
30.
Nginx 的 Web
缓存服务
31.
32.
反向代理中的 Nginx.conf 缓存配置①
…… # 设置 Web 缓存区名称为 cache_one ,缓存空间大小为 2000MB , 1 天清理一次缓存,单个文件超过 5m 不缓存。 proxy_cache_path /data0/proxy_cache_path levels=1:2 keys_zone=cache_one:2000m inactive=1d max_size=5m; # 注: proxy_temp_path 和 proxy_cache_path 指定的路径必须在同一分区 proxy_temp_path /data0/proxy_temp_path; upstream my_server_pool { server 192.168.1.2:80 weight=1 max_fails=2 fail_timeout=30s; server 192.168.1.3:80 weight=1 max_fails=2 fail_timeout=30s; } ……
33.
反向代理中的 Nginx.conf 缓存配置②
server { listen 80; server_name my.domain.com; location / { proxy_set_header Host $host; proxy_set_header X-Forwarded-For $remote_addr; proxy_pass http://my_server_pool; } location ~ .*(gif|jpg|jpeg|png|bmp|swf|js|css)$ { # 对图片、 JS 、 CSS 进行缓存,使用 Web 缓存区 cache_one proxy_cache cache_one;
34.
反向代理中的 Nginx.conf 缓存配置③
# 对不同 HTTP 状态码缓存设置不同的缓存时间 proxy_cache_valid 200 10m; proxy_cache_valid 304 3m; proxy_cache_valid 301 302 1h; proxy_cache_valid any 1m; # 设置 Web 缓存的 Key 值, Nginx 根据 Key 值 md5 哈希存储缓存,这里根据“域名、 URI 、客户端请求 Header 头中的 If-Modified-Since 信息”组合成 Key 。 proxy_cache_key $host$request_uri$http_if_modified_since; # 反向代理,访问后端内容源服务器 proxy_set_header Host $host; proxy_set_header X-Forwarded-For $remote_addr; proxy_pass http://my_server_pool; } access_log off; }
35.
36.
Nginx 的 Rewrite
重写规则
37.
Nginx Rewrite 规则相关指令
Nginx Rewrite 规则相关指令有 if 、 rewrite 、 set 、 return 、 break 等,其中 rewrite 是最关键的指令。一个简单的 Nginx Rewrite 规则语法如下: rewrite ^/b/(.*)html /play.php?video=$1 break; 如果加上 if 语句,示例如下: if (!-f $request_filename) { rewrite ^/img/(.*)$ /site/$host/images/$1 last; }
38.
Nginx 与 Apache
的 Rewrite 规则实例对比① 简单的 Nginx 和 Apache 重写规则区别不大,基本上能够完全兼容。例如: Apache Rewrite 规则: RewriteRule ^/(mianshi|xianjing)/$ /zl/index.php?name=$1 [L] RewriteRule ^/ceshi/$ /zl/ceshi.php [L] RewriteRule ^/(mianshi)_([a-zA-Z]+)/$ /zl/index.php?name=$1_$2 [L] RewriteRule ^/pingce([0-9]*)/$ /zl/pingce.php?id=$1 [L] Nginx Rewrite 规则: rewrite ^/(mianshi|xianjing)/$ /zl/index.php?name=$1 last; rewrite ^/ceshi/$ /zl/ceshi.php last; rewrite ^/(mianshi)_([a-zA-Z]+)/$ /zl/index.php?name=$1_$2 last; rewrite ^/pingce([0-9]*)/$ /zl/pingce.php?id=$1 last; 由以上示例可以看出, Apache 的 Rewrite 规则改为 Nginx 的 Rewrite 规则,其实很简单: Apache 的 RewriteRule 指令换成 Nginx 的 rewrite 指令, Apache 的 [L] 标记换成 Nginx 的 last 标记,中间的内容不变。
39.
Nginx 与 Apache
的 Rewrite 规则实例对比② 如果 Apache 的 Rewrite 规则改为 Nginx 的 Rewrite 规则后,使用 nginx -t 命令检查发现 nginx.conf 配置文件有语法错误,那么可以尝试给条件加上引号。例如一下的 Nginx Rewrite 规则会报语法错误: rewrite ^/([0-9]{5}).html$ /x.jsp?id=$1 last; 加上引号就正确了: rewrite "^/([0-9]{5}).html$" /x.jsp?id=$1 last;
40.
Nginx 与 Apache
的 Rewrite 规则实例对比③ Apache 与 Nginx 的 Rewrite 规则在 URL 跳转时有细微的区别: Apache Rewrite 规则: RewriteRule ^/html/tagindex/([a-zA-Z]+)/.*$ /$1/ [R=301,L] Nginx Rewrite 规则: rewrite ^/html/tagindex/([a-zA-Z]+)/.*$ http://$host/$1/ permanent; 以上示例中,我们注意到, Nginx Rewrite 规则的置换串中增加了“ http://$host” ,这是在 Nginx 中要求的。
41.
Nginx 与 Apache
的 Rewrite 规则实例对比④ 另外, Apache 与 Nginx 的 Rewrite 规则在变量名称方面也有区别,例如: Apache Rewrite 规则: RewriteRule ^/user/login/$ /user/login.php?login=1&forward=http://%{HTTP_HOST} [L] Nginx Rewrite 规则: rewrite ^/user/login/$ /user/login.php?login=1&forward=http://$host last;
42.
Nginx 与 Apache
的 Rewrite 规则实例对比⑤ Apache 与 Nginx Rewrite 规则的一些功能相同或类似的指令、标记对应关系: Apache 的 RewriteCond 指令对应 Nginx 的 if 指令; Apache 的 RewriteRule 指令对应 Nginx 的 rewrite 指令; Apache 的 [R] 标记对应 Nginx 的 redirect 标记; Apache 的 [P] 标记对应 Nginx 的 last 标记; Apache 的 [R,L] 标记对应 Nginx 的 redirect 标记; Apache 的 [P,L] 标记对应 Nginx 的 last 标记; Apache 的 [PT,L] 标记对应 Nginx 的 last 标记;
43.
Nginx 与 Apache
的多条件 Rewrite 示例① 允许指定的域名访问本站,其他域名一律跳转到 http://www.aaa.com Apache Rewrite 规则: RewriteCond %{HTTP_HOST} ^(.*?)domaincom$ RewriteCond %{HTTP_HOST} !^qitadomaincom$ RewriteCond %{DOCUMENT_ROOT}/market/%1/index.htm -f RewriteRule ^/wu/$ /market/%1/index.htm [L] Nginx 的 if 指令不支持嵌套,也不支持 AND 、 OR 等多条件匹配,相比于 Apache 的 RewriteCond ,显得麻烦一些,但是,我们可以通过 下一页 的 Nginx 配置写法来实现这个示例:
44.
Nginx 与 Apache
的多条件 Rewrite 示例② Nginx Rewrite 规则: if ($host ~* ^(.*?)domaincom$) { set $var_wupin_city $1; set $var_wupin '1'; } if ($host ~* ^qitadomaincom$) { set $var_wupin '0'; } if (!-f $document_root/market/$var_wupin_city/index.htm) { set $var_wupin '0'; } if ($var_wupin ~ '1') { rewrite ^/wu/$ /market/$var_wupin_city/index.htm last; }
45.
Nginx 与金山逍遥 TCSQL
的配合
46.
47.
48.
49.
50.
51.
52.
53.
Télécharger maintenant