Nginx

一、Nginx 简介

1. 什么是 Nginx?

Nginx(Engine X)是一款高性能的 Web 服务器 ​ 和 反向代理服务器 ,由俄罗斯工程师 Igor Sysoev 开发,采用 C 语言编写。

2. Nginx 的三大核心作用

  • 反向代理:Nginx 接收客户端请求,再转发给后端服务器

  • 负载均衡:将请求分发到多台 Tomcat / 应用服务器

  • 动静分离:静态资源由 Nginx 直接处理,减轻后端压力


二、Nginx 安装与启动

1. 安装步骤(CentOS)

复制代码
# 1. 安装依赖环境
yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

# 2. 上传并解压
cd /usr/upload
tar -zxvf nginx-1.10.0.tar.gz

# 3. 配置安装路径
cd nginx-1.10.0
./configure --prefix=/usr/local/nginx

# 4. 编译并安装
make && make install

2. 目录结构说明

目录 说明
conf 配置文件(nginx.conf)
html 静态资源
logs 日志文件
sbin 启动脚本

3. 常用命令

复制代码
cd /usr/local/nginx/sbin

# 启动
./nginx

# 停止
./nginx -s stop

# 重新加载配置
./nginx -s reload

三、反向代理配置

反向代理是指 客户端访问 Nginx,Nginx 再转发请求给后端服务

复制代码
server {
    listen 80;
    server_name localhost;

    location / {
        proxy_pass http://127.0.0.1:8080;
    }
}

📌 效果:

访问 http://localhost→ 实际访问 http://127.0.0.1:8080


四、负载均衡配置

1. 基本负载均衡示例

复制代码
upstream myTomcats {
    server 127.0.0.1:8080;
    server 127.0.0.1:8090;
}

server {
    listen 80;
    server_name localhost;

    location / {
        proxy_pass http://myTomcats;
    }
}

2. Nginx 的 6 种负载均衡策略

策略 说明
轮询(默认) 按顺序轮流分配
weight 按权重比例分配
ip_hash 按客户端 IP 分配
url_hash 按请求 URL 分配
least_conn 分配给连接数最少的服务器
fair 按响应时间动态分配

3. Session 丢失问题如何解决?

✅ 推荐方案:Redis + Session

  • Redis 与 Session 都是 K-V 结构

  • 支持过期时间

  • 高可用、性能优

❌ 不推荐方案:

  • ip_hash(服务器宕机仍可能丢失)

  • Session 复制(集群规模大时性能差)


五、动静分离配置

动静分离:

👉 静态资源由 Nginx 直接返回

👉 动态请求转发给 Tomcat

复制代码
server {
    listen 80;
    server_name localhost;

    location / {
        root /usr/upload/pic;
    }
}

📌 适用场景:

  • 图片服务器

  • 前端静态站点

  • CDN 源站


六、总结

✅ Nginx 是高性能服务器

✅ 常用于 反向代理 + 负载均衡 + 动静分离

✅ 生产环境强烈建议使用 Redis 解决 Session 共享问题

如果你觉得这篇文章对你有帮助,欢迎 点赞 + 收藏 + 关注​ 👍

后续我会继续更新 Nginx 高级配置与高可用方案。

相关推荐
lsh曙光3 小时前
playbook剧本(2)--Ansible变量
linux·运维·网络
ly76893 小时前
Docker 从入门到实践:镜像、容器、Dockerfile 与 Docker Compose 详解
运维·docker·容器
用户3169353811834 小时前
ry.bat和ry.sh部署
运维
mennekes4 小时前
自动化产线临时配电:明装工业插座 vs 面板式工业插座 vs 模块化插座箱取舍
运维·科技·安全·制造
tedcloud1234 小时前
book-to-skill 怎么部署?把技术书和项目文档变成 AI Agent 可复用知识
linux·运维·服务器·人工智能·开源
旗开得胜马到成功5 小时前
SK海力士SSD售后翻车:企业备份介质裸奔风险与中科热备技术选型拆解
运维·服务器·网络
fatcoder5 小时前
玩转Nginx 09 — 运维排障:三场"火灾"实战演练
前端·后端·nginx
7177775 小时前
厘清 Gitee Test 能力边界:测试管理、自动化与 DevSecOps 协同路径
运维·gitee·自动化
brian00315 小时前
虚拟机vmware文件的后缀名汇总介绍
运维·vmware·后缀名
2301_800954995 小时前
Linux 常用系统信息与进程管理命令速查
linux·运维·服务器