Nginx作为负载均衡服务
Posted crazymagic
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx作为负载均衡服务相关的知识,希望对你有一定的参考价值。
nginx作为负载均衡服务简介
Nginx负载均衡
GSLB(全局负载均衡)
调度中心节点:一个全局的调度节点;
调度节点:一个局部调度节点;
应用服务中心节点:一个全局的应用服务调度节点;
应用服务:一个局部应用服务节点;
调度中心节点管理着调度节点;
应用服务中心节点管理着应用服务;
举例:
第一步:张三请求局部调度节点,局部调度节点则返回服务地址给张三;
第二步:张三根据局部调度节点返回的服务地址,请求局部应用服务,局部应用服务则返回结果给张三。
SLB(负载均衡)
调度节点与服务节点处于一个逻辑单元里面,这样对于部分服务的实时性、响应性是非常好的。
Nginx使用的就是SLB。
四层负载均衡和七层负载均衡
四层负载均衡
按照网络OSI模型可以分为四层负载均衡和七层负载均衡;
四层负载均衡:在OSI模型里面的传输层,传输层能支持到tcp/ip协议,所以只需要转发tcp/ip协议的包,就可以实现负载均衡。
优势:性能非常好,只需要在最底层应用处理,而不需要进行一些复杂的逻辑,只需要包的转发就行
七层负载均衡
七层负载均衡主要是在应用层使用,所以它可以完成很多应用层的协议请求,比如HTTP协议的负载均衡,它可以实现HTTP信息的改写,头信息的改写,应用规则的控制。
Nginx就是典型的七层负载均衡SLB。
nginx 作为负载均衡服务配置
Nginx负载均衡模型图
upstream server就相当于配置的虚拟服务池
upstream配置语法
- Syntax: upstream name ...
- Default: —
- Context: http
负载均衡案例配置
server1.conf
server listen 8001; server_name localhost; #charset koi8-r; location / root /opt/app/code1; index index.html index.htm;
server2.conf
server listen 8002; server_name localhost; #charset koi8-r; location / root /opt/app/code2; index index.html index.htm;
server3.conf
server listen 8003; server_name localhost; #charset koi8-r; location / root /opt/app/code2; index index.html index.htm;
upstream_test.conf
upstream imooc server 192.168.1.112:8001; server 192.168.1.112:8002; server 192.168.1.112:8003; server listen 80; server_name www.zhangbiao.com; resolver 8.8.8.8; location / proxy_pass http://imooc; proxy_redirect default;
刷新一次
刷新二次
属性三次
Upstream举例
upstream backend server backend1.example.com weight=5; server backend2.example.com:8080; server unix:/tmp/backend3; server backup1.exmple.com:8080 backup; server backup2.example.com:8080 backup;
以上是关于Nginx作为负载均衡服务的主要内容,如果未能解决你的问题,请参考以下文章
Nginx——nginx作为负载均衡服务(负载均衡策略url_hash策略)