Nginx介绍

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介: Nginx介绍

简介


nginx是一款轻量级的web服务器/反向代理服务器以及电子邮件(IMAP/POP3)代理服务器。其特点是占有内存小,并发能力强,事实上nginx的并发能力在同类型的服务器中表现较好,中国大陆使用nginx的网站有百度,京东,腾讯等

nginx是由俄罗斯人开发,最早的发布于2004年


nginx下载和安装


安装过程:

1.安装依赖包 yum -y install gcc pcre-devel zlib-devel openssl openssl-devel

2.解压压缩包 tar -zxvf nginx-1.16.1.tar.gz

3.到配置目录中去 cd nginx-1.16.1/

4.设置安装目录 ./configure --prefix=/usr/local/app/nginx

5.安装 make && make install


nginx目录结构介绍


1.conf/nginx.cong    nginx配置文件

2.html 存放静态文件

3.logs 日志目录,存放日志文件

4.sbin/nginx 二进制文件,用于启动,停止nginx


nginx命令


查看版本号:./nginx -v

检查配置正确性: ./nginx -t

启动和停止:

启动: ./nginx

停止: ./nginx -s stop

启动完成后可以查看nginx进程: ps -ef|grep nginx

当修改nginx配置文件后,需要重新加载才能生效,在sbin目录下输入:

./nginx -s reload


nginx配置文件结构


全局块:和nginx运行相关的全局配置

events块:和网络连接相关的配置

http块:代理,缓存,日志记录,虚拟主机

http全局块

server块

server全局块

location块

注:http块可以配置多个server块,每个server块可以配置多个location块


nginx具体应用


部署静态资源


nginx可以作为静态web服务器来部署静态资源。静态资源是指在服务端真实存在而且可以展示的文件,如html,css等

相比于tomcat,nginx处理静态资源的能力更加高效,所以在生产环境下,一般将金泰资源部署到nginx。

具体过程只需要将文件复制到nginx安装目录下的html目录中即可

例:

server{
        listen 80;   #监视端口
        server_name localhost;  #服务器名称
        location /{     #匹配客户端请求url
        root html;   #指定静态资源根目录
        index index.html;   #指定默认首页
}

反向代理


正向代理介绍


是一个位于客户端和原始服务器之间的服务器,为了从原始服务器获取内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端

正向代理的典型用途是为在防火墙内的局域网用户提供访问internet途径

正向代理一般是在客户端设置代理服务器,哦通过代理服务器转发请求,最终访问到目的服务器


反向代理介绍:


反向代理服务器位于用户和目标服务器之间,但是对于用户而言,反向代理服务器相当于目标服务器,即用户直接访问反向代理服务器就要可以获得目标服务器的资源,反向代理服务器负责将请求转发给目标服务器

用户无需知道目标服务器的地址,也无需在用户端作任何决定


配置反向代理

server{
        listen 80;   #监视端口
        server_name localhost;  #服务器名称
        location /{     #匹配客户端请求url
        proxy_pass http://192.169.209.130;  #反向代理配置,将请求转发到指定服务
}

负载均衡


背景


       早期的网站流量和业务功能都比较简单,单台服务器就可以满足基本需求,随着互联网的发展,业务流量越来越多,单台服务器的性能以及单点故障问题就显露出来了,需要多台服务器组成应用集群,进行性能的水平拓展以及避免单点故障出现

1.应用集群:将同一应用部署到多台机器上,组成应用集群,接收负载均衡器分发的请求,进行业务处理以及返回响应

2.负载均衡器:将用户的请求根据对应的负载均衡算法分发到应用集群中的一台服务器


负载均衡配置


upstream targetserver{
        server 192.168.209.100:8080;
        server 192.168.209.100:8080;
}
server{
        listen 80;   #监视端口
        server_name localhost;  #服务器名称
        location /{     #匹配客户端请求url
        proxy_pass http://targetserver;    #负载均衡
}

负载均衡策略


轮询 (默认方式)

Weight 权重方式

Ip_hash 依据ip分配方式

Least_conn 依据最少连接方式

Url_hash 依据url分配方式

fair 依据响应时间

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
目录
相关文章
|
6月前
|
负载均衡 应用服务中间件 nginx
|
2月前
|
负载均衡 应用服务中间件 Linux
|
2月前
|
缓存 应用服务中间件 nginx
nginx(四)
nginx(四)
|
6月前
|
缓存 负载均衡 应用服务中间件
nginx 就该这么用
nginx 就该这么用
43 0
|
负载均衡 前端开发 安全
nginx能帮我们做什么?
Nginx是一款高性能的开源Web服务器软件,它可以帮助我们完成以下几个方面的任务:
95 0
|
6月前
|
存储 Java 应用服务中间件
nginx
nginx
53 0
|
缓存 应用服务中间件 nginx
Nginx使用总结
Nginx使用总结
101 0
|
前端开发 应用服务中间件 nginx
Nginx 简单介绍(一)
如果我们想要将数据转接到多个服务器可以这样写: [^1]
64 0
|
缓存 负载均衡 算法
Nginx——详解
Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的。从2004年发布至今,凭借开源的力量,已经接近成熟与完善。
149 0
Nginx——详解