Nginx实战:反向代理及负载均衡实现

目录

  • 什么是Nginx
  • Nginx作用
  • 负载均衡策略

什么是Nginx

Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。2011年6月1日,nginx 1.0.4发布。

其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。在全球活跃的网站中有12.18%的使用比率,大约为2220万个网站。

Nginx 是一个安装非常的简单、配置文件非常简洁(还能够支持perl语法)、Bug非常少的服务。Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够不间断服务的情况下进行软件版本的升级。

Nginx代码完全用C语言从头写成。官方数据测试表明能够支持高达 50,000 个并发连接数的响应。

Nginx作用

nginx的主要作用有三个方面:1、作为 Web 服务器;2、负载均衡服务器;3、邮件代理服务器等三个方面。其特点是占有内存少,并发能力强,给使用者带来了很多的便利。nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行

Http代理,反向代理:作为web服务器最常用的功能之一,尤其是反向代理。

  • 正向代理

Nginx实战:反向代理及负载均衡实现_第1张图片

  • 反向代理

Nginx实战:反向代理及负载均衡实现_第2张图片

负载均衡策略

Nginx提供的负载均衡策略有2种:内置策略和扩展策略。内置策略为轮询,加权轮询,Ip hash。扩展策略,就天马行空,只有你想不到的没有他做不到的。

修改nginx文件夹中conf下面的nginx.conf配置文件

Nginx实战:反向代理及负载均衡实现_第3张图片

1、实操举例

  • 轮询

Nginx实战:反向代理及负载均衡实现_第4张图片

Nginx实战:反向代理及负载均衡实现_第5张图片

#负载均衡 轮询
upstream lixuanhong{
	server 127.0.0.1:8080 ;
	server 127.0.0.1:8081 ;
	server 127.0.0.1:8082 ;
}
	
location / {
    root   html;
    index  index.html index.htm;
	proxy_pass http://lixuanhong; #反向代理
}
  • 加权轮询

Nginx实战:反向代理及负载均衡实现_第6张图片
Nginx实战:反向代理及负载均衡实现_第7张图片

#负载均衡 权重
upstream lixuanhong{
		server 127.0.0.1:8080 weight=1;
		server 127.0.0.1:8081 weight=2;
		server 127.0.0.1:8082 weight=3;
}
	
location / {
         root   html;
         index  index.html index.htm;
		 proxy_pass http://lixuanhong; #反向代理
}
  • iphash

iphash对客户端请求的ip进行hash操作,然后根据hash结果将同一个客户端ip的请求分发给同一台服务器进行处理,可以解决session不共享的问题。

Nginx实战:反向代理及负载均衡实现_第8张图片
Nginx实战:反向代理及负载均衡实现_第9张图片

#负载均衡 哈希
upstream lixuanhong{
	ip_hash;
	server 127.0.0.1:8080 ;
	server 127.0.0.1:8081 ;
	server 127.0.0.1:8082 ;
}
	
location / {
    root   html;
    index  index.html index.htm;
	proxy_pass http://lixuanhong; #反向代理
}

目前,通过使用Nginx大大提高了我们网站的响应速度

你可能感兴趣的:(Nginx实战,nginx,负载均衡,服务器)