快速熟悉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。扩展策略,就天马行空,只有你想不到的没有他做不到的啦。

相关推荐
q***44151 小时前
Nginx 缓存清理
运维·nginx·缓存
ascarl20108 小时前
记录一下es节点掉线后修复好了的情况
运维·jenkins
safestar20128 小时前
Elasticsearch深度实战:从分布式原理到生产环境踩坑全记录
运维·搜索引擎·全文检索·es
小兔薯了9 小时前
7. LNMP-wordpress
android·运维·服务器·数据库·nginx·php
福尔摩斯张10 小时前
Linux进程间通信(IPC)机制深度解析与实践指南
linux·运维·服务器·数据结构·c++·算法
不过普通话一乙不改名10 小时前
Linux 网络发包的极致之路:从普通模式到 AF_XDP ZeroCopy
linux·运维·网络
x***133911 小时前
如何在Linux中找到MySQL的安装目录
linux·运维·mysql
8***848211 小时前
macOs安装docker且在docker上部署nginx+php
nginx·macos·docker
p***924811 小时前
服务器部署,用 nginx 部署后页面刷新 404 问题,宝塔面板修改(修改 nginx.conf 配置文件)
运维·服务器·nginx
HarrySunCn11 小时前
Rocky服务器部署前端静态项目的注意点
运维·服务器