快速熟悉Nginx

一、Nginx是什么?

‌**Nginx是一款高性能、轻量级的Web服务器和反向代理服务器。**‌

  • 特点‌:Nginx采用事件驱动的异步非阻塞处理框架,内存占用少,并发能力强,资源消耗低。
  • 功能‌:Nginx主要用作静态文件服务、负载均衡、正向代理和反向代理等,也可用于电子邮件(IMAP/POP3)代理服务。
  • 应用场景‌:Nginx在互联网项目中被广泛应用,特别是在需要处理高并发请求的场景下,如百度、京东、腾讯、淘宝等大型网站。

二、正向代理与反向代理

在这里,用通俗易懂的方式解释一下:

代理服务器如果配置在客户端即为正向代理,如果配置在服务端即为反向代理

正向代理代替客户端去发送请求,反向代理代替服务端接受请求。

举个正向代理的例子:假设现在有一台主机上不了网,可以通过nginx代理该主机上网,配置如下

javascript 复制代码
server {
    listen       80;      
    server_name  192.168.184.128;

    location /proxy_baidu/ {
            proxy_pass http://baidu.com/;
    }
}

在浏览器中输入http://192.168.184.128/proxy_baidu 即可访问到百度主页

配置反向代理的例子:在一台服务器上部署两个tomcat,用nginx做反向代理(负载均衡),nginx配置如下

javascript 复制代码
    upstream tomcatcluster{
        server 127.0.0.1:8080;
        server 127.0.0.1:8081;
    }

    server {
        listen       8090;
        server_name  localhost;

        location / {
           proxy_pass http://tomcatcluster;
        }

tomcat的两个端口为:8080,8081;nginx监听8090端口请求,将请求交给tomcat两个端口处理

下面在浏览器输入http://localhost:8090/ 就能访问到tomcat主页。

三、Nginx的负载均衡

负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。

负载均衡(Load Balance)其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。

简单点来说:Nginx中的负载均衡是指nginx通过反向代理将客户端请求均匀分摊到多个上游应用服务器上,以提高性能、增加可用性、可扩展性和高并发处理能力。

Nginx提供的负载均衡策略有2种:内置策略和扩展策略。内置策略为轮询,加权轮询,Ip hash。扩展策略,就天马行空,只有你想不到的没有他做不到的啦。

相关推荐
太多.梦想.完成5 分钟前
Linux系统无头浏览器pupteer截图出来中文乱码
linux·运维·服务器
猹叉叉(学习版)8 分钟前
【系统分析师_知识点整理】 14.系统运行与维护
运维·笔记·软考·系统分析师
竹之却32 分钟前
【Minecraft】无法连接至服务器,登录失败:无效会话(请尝试重启游戏及启动器)
运维·服务器·游戏·我的世界·minecraft
源远流长jerry33 分钟前
负载均衡详解
linux·运维·服务器·网络·tcp/ip·负载均衡
J2虾虾1 小时前
Linux 定时备份 MySQL 数据库(完整教程)
linux·运维·数据库
爱学习的程序媛1 小时前
Docker常用指令速查手册
运维·docker·容器
数据知道1 小时前
claw-code 源码分析:Transcript / Session Store——智能体「运行史」数据结构怎样才算可运维?
运维·数据结构·python·ai·claude code
4ever.ov01 小时前
仿muduo库one Thread one Loop式主从reactor模型高并发服务器项目日志
运维·服务器·c语言·c++·muduo
木子欢儿1 小时前
在 Linux上配置 rclone,将 Cloudflare R2 和 Minio 挂载为本地硬盘。
linux·运维·服务器