Nginx-笔记
Nginx快速入门
1.简介
Nginx 是高性能的 HTTP 和 反向代理 的web服务器,处理高并发能力强大,能经受高负载的考验, 支持高达 50,000 个并发连接数。
Nginx 可以作为静态页面的 web 服务器
2.安装
在nginx官网下载
2.1 windows安装
在官网下载nginx的windows压缩包,解压到一个路径没有中文的目录下
点击打开nginx.exe即可运行nginx,默认运行在80端口,浏览器访问 localhost 即可看到nginx的默认页面
但是还是建议在该目录下使用命令行,输入start nginx 来启动nginx
2.2 linux安装
下载不带windows的包,传到 Linux 系统中解压
解压后进入 nginx 的目录下,执行文件 configure ,然后编译安装
1 | ./configure |
找到安装成功后的文件,然后进入sbin/ 运行 nginx
1 | whereis nginx (输出nginx的路径) |
一条条输入后没有报错就是成功了
注意如果是部署在远程服务器,需要在安全组中打开相应的端口
2.3 常用命令
1 | cd /usr/local/nginx/sbin |
3.Nginx相关概念
3.1 反向代理
反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。
比如当我们访问一个网站的时候,这个网站背后可能有很多服务器,但对外暴露的只有一个域名。我们也只能通过这个域名来访问,然后我们的请求会被转发到后面的服务器上,从而达到隐藏服务器ip和端口等信息
在文件夹下的 conf/nginx.conf 中的 http{ } 内进行代理等配置
1 | http { |
3.2 负载均衡
模板如下
1 | http { |
Ⅰ、轮询策略(负载均衡默认的分配策略)
将用户的请求轮流分配给服务器,就像是挨个数数,轮流分配。如果后端有服务器宕机了,就会自动剔除。
1 | upstream myserver { |
Ⅱ、weight策略(权重策略)
简而言之,就是当weight(权重)越高时,被分配的用户请求就会越多。
1 | upstream myserver { |
Ⅲ、ip_hash策略
每个请求访问会根据ip地址的hash结果进行分配,这样每个用户就会固定访问一个后端服务器,也就是只要用户的ip地址不发生改变,那会对应后续访问的后端服务器就不会发生变化,可以解决session的问题。
1 | upstream myserver { |
Ⅳ、fair策略(第三方)
按后端服务器的响应时间来分配,响应时间短的优先分配。比如,当客户端发出请求后,Nginx负载均衡,转发请求到后端服务器中,后端服务器后很多(比如:A服务器、B服务器……等等),其中如果B服务器响应速度最快,也就是响应时间最短,那么就会将请求转发给B服务器。
1 | upstream myserver { |