加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 湛江站长网 (https://www.0759zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

Nginx的n种用法,你都会吗?

发布时间:2018-12-29 11:43:49 所属栏目:业界 来源:编程无界
导读:副标题#e# 本文旨在用最通俗的语言讲述最枯燥的基本知识 nginx作为一个高性能的web服务器,想必大家垂涎已久,蠢蠢欲动,想学习一番了吧,语法不多说,网上一大堆。下面博主就nginx的非常常用的几个功能做一些讲述和分析,学会了这几个功能,平常的开发和部

可能绝大部分人接触到的web项目,刚开始时都是一台服务器就搞定了,但当网站访问量越来越大时,单台服务器就扛不住了,这时候需要增加服务器做成集群来分担流量压力,而在架设这些服务器时,nginx就充当了接受流量和分流的作用了,当请求到nginx服务器时,nginx就可以根据设置好的负载信息,把请求分配到不同的服务器,服务器处理完毕后,nginx获取处理结果返回给客户端,这样,用nginx的反向代理,即可实现了负载均衡。

Nginx的n种用法,你都会吗?

nginx实现负载均衡有几种模式:

1.轮询:每个请求按时间顺序逐一分配到不同的后端服务器,也是nginx的默认模式。轮询模式的配置很简单,只需要把服务器列表加入到upstream模块中即可。

下面的配置是指:负载中有三台服务器,当请求到达时,nginx按照时间顺序把请求分配给三台服务器处理。

  1. upstream serverList { 
  2. server 1.2.3.4; 
  3. server 1.2.3.5; 
  4. server 1.2.3.6; 

2.ip_hash:每个请求按访问IP的hash结果分配,同一个IP客户端固定访问一个后端服务器。可以保证来自同一ip的请求被打到固定的机器上,可以解决session问题。

下面的配置是指:负载中有三台服务器,当请求到达时,nginx优先按照ip_hash的结果进行分配,也就是同一个IP的请求固定在某一台服务器上,其它则按时间顺序把请求分配给三台服务器处理。

  1. upstream serverList { 
  2.     ip_hash 
  3.     server 1.2.3.4; 
  4.     server 1.2.3.5; 
  5.     server 1.2.3.6; 

3.url_hash:按访问url的hash结果来分配请求,相同的url固定转发到同一个后端服务器处理。

  1. upstream serverList { 
  2.     server 1.2.3.4; 
  3.     server 1.2.3.5; 
  4.     server 1.2.3.6; 
  5.     hash $request_uri;  
  6.     hash_method crc32;  

fair:按后端服务器的响应时间来分配请求,响应时间短的优先分配。

  1. upstream serverList { 
  2.     server 1.2.3.4; 
  3.     server 1.2.3.5; 
  4.     server 1.2.3.6; 
  5.     fair; 

(编辑:PHP编程网 - 湛江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!