nginx 学习笔记

前言:
nginx在面试中多次被q,这次将nginx 知识点进行集中总结如下。
Nginx (engine x) 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。

反向代理

反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。


image.png

负载均衡

负载均衡策略: 目前Nginx服务器的upstream模块支持6种方式的分配。
1 轮询: 每个请求会按时间顺序逐一分配到不同的后端服务器。
在轮询中,如果服务器down掉了,会自动剔除该服务器。
缺省配置就是轮询策略。
此策略适合服务器配置相当,无状态且短平快的服务使用。
2 权重方式,在轮询策略的基础上指定轮询的概率。
权重越高分配到需要处理的请求越多。
此策略可以与least_conn和ip_hash结合使用。
此策略比较适合服务器的硬件配置差别比较大的情况
3 ip_hash:保证相同的ip访问相同的服务器,主要解决session不能跨服务的问题。
在nginx版本1.3.1之前,不能在ip_hash中使用权重(weight)。
ip_hash不能与backup同时使用。
此策略适合有状态服务,比如session。
当有服务器需要剔除,必须手动down掉
4 least_conn:把请求转发给连接数较少的后端服务器。
此负载均衡策略适合请求处理时间长短不一造成服务器过载的情况。
5 fair(第三方策略):按照服务器端的响应时间来分配请求,响应时间短的优先分配。
6 url_hash(第三方策略):同一个资源多次请求,可能会到达不同的服务器上,导致不必要的多次下载,缓存命中率不高,以及一些资源时间的浪费。而使用url_hash,可以使得同一个url(也就是同一个资源请求)会到达同一台服务器,一旦缓存住了资源,再此收到请求,就可以从缓存中读取。 
该策略主要是可以提高后端服务器缓存效率

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、Nginx简介 1.什么是Nginx Nginx(engine x)是一个高性能的HTTP和反向代理服务,Ni...
    青年心路阅读 329评论 0 0
  • 1.什么是负载均衡?通过某种负载分担技术,将外部发送来的请求按照某种策略分配到服务器集合的某一台服务器上,而接收到...
    少艾_91df阅读 526评论 0 0
  • 1. 概念 Nginx (engine x) 是一个高性能的web服务器,同时也提供了IMAP/POP3/SMTP...
    周涛_913d阅读 698评论 0 0
  • Nginx 介绍 Nginx是一款高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代...
    专职跑龙套阅读 272评论 0 0
  • 我又能说什么呢 时间就这么一点一滴的过去了 也不知道我想要什么 我所爱什么 我所在乎什么 我又要做什么呢 就这么不...
    绿六阅读 196评论 0 0