upstream

Nginx 的关键组件的介绍

删除回忆录丶 提交于 2019-11-26 12:45:09
本文章主要介绍 Nginx 本身功能,不依赖第三方的任何模块。介绍常用的组件功能: 反向代理、负载均衡、Http服务器、正向代理 反向代理(Reverse Proxy): 什么是反向代理呢?本人最直接的理解是 将外部的请求,通过 Nginx 软件转向内部请求当中,并响应相关请求。Nginx接收外部的连接请求,然后将请求转发给内部服务器,并将结果反馈请求客户端,此时代理服务器的表现为一个反向代理服务器。目的就是为了真实的内部服务器不能直接外部网络访问。代理服务器的前提条件是该服务器能被外部网络访问的同时又跟真实服务器在同一个网络环境。 反向代理简单配置方式: server {   listen  80;   server_name  localhost;   client_max_body_size 1024M;   location / {     proxy_pass  http://localhost:8080;     proxy_set_header Host $host:$server:$server_port;   } } 保存配置文件后重启Nginx服务,就生效了。 负载均衡: nginx负载均衡主要是对七层网络通信模型中的第七层应用层上的http、https进行支持。简单而言,2台或以上的应用服务器时,根据相应规则将请求分发到某台服务器上处理

nginx一致性hash

不问归期 提交于 2019-11-26 11:17:20
consistencehash https://github.com/replay/ngx_http_consistent_hash->download https://github.com/replay/ngx_http_consistent_hash/archive/master.zip [root @localhost soft]# wget https://github.com/replay/ngx_http_consistent_hash/archive/master.zip [root @localhost soft]# unzip master [root @localhost soft]# cd ngx_http_consistent_hash-master#readme [root @localhost ngx_http_consistent_hash-master]# /usr/local/nginx/sbin/nginx -V nginx version: nginx/1.4.2 built by gcc 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) configure arguments: --prefix=/usr/local/nginx [root @localhost soft]# cd nginx-1.4.2

nignx 负载均衡的几种算法介绍

巧了我就是萌 提交于 2019-11-25 22:45:36
一、Nginx负载均衡算法 1、轮询(默认) 每个请求按时间顺序逐一分配到不同的后端服务,如果后端某台服务器死机,自动剔除故障系统,使用户访问不受影响。 2、weight(轮询权值) weight的值越大分配到的访问概率越高,主要用于后端每台服务器性能不均衡的情况下。或者仅仅为在主从的情况下设置不同的权值,达到合理有效的地利用主机资源。 3、ip_hash 每个请求按访问IP的哈希结果分配,使来自同一个IP的访客固定访问一台后端服务器,并且可以有效解决动态网页存在的session共享问题。 4、fair 比 weight、ip_hash更加智能的负载均衡算法,fair算法可以根据页面大小和加载时间长短智能地进行负载均衡,也就是根据后端服务器的响应时间 来分配请求,响应时间短的优先分配。Nginx本身不支持fair,如果需要这种调度算法,则必须安装upstream_fair模块。 5、url_hash 按访问的URL的哈希结果来分配请求,使每个URL定向到一台后端服务器,可以进一步提高后端缓存服务器的效率。Nginx本身不支持url_hash,如果需要这种调度算法,则必须安装Nginx的hash软件包。 一、轮询(默认) 每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。 二、weight 指定轮询几率,weight和访问比率成正比