官网地址:http://nginx.org/en/download.html
http://nginx.org/en/download.html
Nginx(“engine x”)是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。
在高连接并发的情况下,Nginx是Apache服务器不错的替代品。
一、正向代理和反向代理
正向代理
正向代理,就是使用工具代理客户端,比如你要访问外国网站,你在国内是访问不了的,此时需要下载vpn,连接vpn了,用vpn去访问外网,vpn就是你的代理服务器,vpn代理你的客户端,此时定义为:正向代理
反向代理
平时我们访问百度服务的时候,www.baidu.com,访问的永远是百度这一个域名地址,但是百度后台有成百上千的服务器,此时域名的代理服务器来分发请求,那么此时的代理服务器代理的是百度的服务器,定义为:反向代理
二、负载均衡
Nginx提供的负载均衡策略有2种:内置策略和扩展策略
内置策略为:轮询,加权轮询,ip hash
扩展策略为: fair .通用hash、一致性hash
轮询:
Nginx 把每一个请求依次分发给后台服务器,每一个人平均分配
加权轮询:
Nginx 根据服务器的硬件性能,硬件处理性能越高,给你分发的请求占比就越多
ip hash
Iphash 对客户端请求的ip进行hash操作,然后根据hash结果将同一个客户端ip的请求分发给同一台服务器进行处理,可以解决session不共享的问题
动静分离
在我们的网站中,有些请求是需要后台处理的,有些请求是不需要后台处理的(如:css、html、jpg、js等),这些不需要经过后台处理的文件称为静态文件,让动态网站里的动态网页根据一定规则把不变的资源和经常变得资源区分开来,动静资源做好了拆分以后,我们就可以根据静态资源的特点将其做缓存操作,提供 资源响应的速度。
扩展策略
fair
默认不被编译进nginx内核。它根据后端服务器的响应时间判断负载情况,从中选出负载最轻的机器进行分流。 这种策略具有很强的自适应性,但是实际的网络环境往往不是那么简单,因此须慎用。
通用hash、一致性hash
通用hash和一致性hash也是种扩展策略。通用hash可以以nginx内置的变量为key进行hash,一致性hash采用了nginx内置的一致性hash环,可支持memcache。
网友评论