全部学科
Python全栈
python
NodeJS全栈
nodejs
小程序首页
📝 1 篇文章 8 道配套习题

Nginx集群与高可用专题

专题说明

本专题聚焦Nginx集群架构与高可用方案,涵盖集群架构设计、负载均衡配置、反向代理缓存策略、Keepalived+VRRP故障转移、会话保持方案、健康检查机制、Tomcat集群部署和性能监控实践。

学习目标

  1. 掌握Nginx高可用集群架构(Keepalived + 主备Nginx)的设计原理
  2. 熟练配置upstream负载均衡(least_conn、weight等参数)
  3. 理解反向代理缓存的工作机制和缓存策略控制
  4. 掌握VRRP协议和Keepalived的VIP漂移机制
  5. 了解会话保持的多种实现方式及适用场景
  6. 区分被动健康检查和主动健康检查的配置差异
  7. 掌握Nginx + Tomcat集群的动静分离架构
  8. 学会使用stub_status模块进行实时性能监控

学习内容

本专题涵盖以下知识点:

  • Nginx集群架构设计(Keepalived + 双机主备 + 多台后端)
  • upstream负载均衡配置(least_conn、weight、upstream块定义)
  • 反向代理缓存(proxy_cache、proxy_no_cache、proxy_cache_bypass)
  • Keepalived + VRRP协议工作原理和VIP自动漂移
  • 会话保持实现方式(ip_hash、sticky cookie、Redis共享Session)
  • 健康检查(被动检查max_fails/fail_timeout、Nginx Plus主动检查)
  • Nginx + Tomcat集群部署与动静分离
  • 性能监控(ngx_http_stub_status_module)

学习建议

  • 高可用方案的核心是故障自动转移,理解VRRP协议的VIP漂移机制
  • 区分Nginx开源版和Plus版的功能差异(如主动健康检查)
  • 会话保持需结合业务场景选择,分布式系统推荐使用外部Session存储

📝 发现内容有误?点击此处直接编辑

📝 配套习题(8 题)

1
单选题

在构建 Nginx 高可用集群时,以下哪种架构是最常见的?

A

单台 Nginx + 单台后端服务器

B

Keepalived + 双机 Nginx(主备)+ 多台后端服务器

C

多台 Nginx 直接并列,无健康检查和故障转移

D

Nginx + 数据库集群,无后端应用服务器

2
填空题

配置 Nginx upstream 负载均衡,使用 least_conn 算法,并为后端服务器设置权重:

text
________ backend_servers {
    __________;
    server 192.168.1.10:8080 ______ 3;
    server 192.168.1.11:8080 weight 1;
}

请填入正确的指令名称。(1.定义 upstream 块 2.指定算法 3.设置权重)

3
多选题

以下关于 Nginx 反向代理缓存的说法,正确的有?

A

缓存可以显著减少后端服务器的负载

B

proxy_cache 可以将缓存数据存储在内存中

C

proxy_no_cache 和 proxy_cache_bypass 可以控制不缓存的条件

D

缓存对于动态内容毫无意义,不应该使用

4
单选题

以下关于 Keepalived 和 VRRP 协议的说法,错误的是?

A

VRRP(Virtual Router Redundancy Protocol)用于实现路由器/服务器的冗余备份

B

Keepalived 通过 VRRP 协议在多台服务器之间浮动 VIP(虚拟 IP)

C

Keepalived 的主备切换需要人工干预才能完成

D

Keepalived 可以通过健康检查脚本检测服务状态

5
单选题

在 Nginx 负载均衡环境中,以下哪种方式不能实现会话保持?

A

使用 ip_hash 算法

B

使用 sticky cookie 模块

C

使用 Redis 等外部存储共享 Session 数据

D

使用 round-robin 轮询算法

6
多选题

以下关于 Nginx 健康检查的说法,正确的有?

A

Nginx 开源版默认支持被动健康检查,根据请求失败情况自动标记后端不可用

B

max_fails 和 fail_timeout 参数可以配置被动健康检查的灵敏度

C

Nginx 开源版原生支持主动健康检查,定期发送探测请求

D

Nginx Plus 版本支持主动健康检查,定期探测后端健康状态

7
判断题

在 Nginx + Tomcat 集群部署中,Nginx 负责负载均衡和静态资源服务,Tomcat 负责处理动态请求,这种架构实现了动静分离。()

A

B

8
单选题

要监控 Nginx 的实时性能指标(如活跃连接数、请求速率等),最简单的方式是?

A

查看 Nginx 的错误日志

B

启用 ngx_http_stub_status_module 模块,通过 HTTP 接口查看状态

C

查看 Nginx 的访问日志并手动统计

D

定期重启 Nginx 以重置计数器

← 上一个专题 Nginx流量控制与灰度发布专题
下一个专题 → Nginx高并发调优与内存管理专题

📝 发现内容有误?点击此处直接编辑

想查看更多习题和详细解析?
小程序提供完整的题库和详细解析

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库