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 高级配置与高可用方案。

相关推荐
晚风吹长发9 小时前
Docker基础——Docker Network(网络详解)
linux·运维·网络·ubuntu·docker·容器
LedgerNinja11 小时前
WEEX API 自动化交易实践:下单、撤单、订单查询与状态闭环
运维·自动化
执笔画流年呀11 小时前
Linux搭建Java项目部署环境
java·linux·运维
Dory_Youth12 小时前
联想笔记本电脑失灵
运维·笔记·电脑
W.W.H.12 小时前
嵌入式 Linux外接USB/WIFI模块兼容5G频段实战
linux·运维·5g·wifi
运维大师12 小时前
【K8S 运维实战】24-资源优化HPA与VPA
运维·kubernetes·github
GlobalHRTalk12 小时前
埃及名义雇主EOR业务概述与市场发展优势分析
大数据·运维·人工智能
瞬间&永恒~13 小时前
【MySQL】 主从复制多拓扑搭建实验
运维·数据库·mysql·云原生
星野爱89514 小时前
远程控制哪家安全性更高?ToDesk、UU远程、向日葵隐私屏深度测评!
linux·运维·网络
ALINX技术博客15 小时前
【黑金云课堂】FPGA技术教程Linux开发:系统定制
linux·运维·fpga开发