face39 web服务器的负载均衡

web服务器的负载均衡

七层负载均衡的实现

基于url等应用层信息的负载均衡

nginx的proxy是他一个很强大的功能实现了七层负载均衡

功能强大 性能卓越 运行稳定

配置简单灵活

能够自动剔除工作不正常的后端服务器

上传文件使用异步模式

支持多种分配策略 可以分配权重 分配方式灵活

nginx负载均衡

内置策略 (安装时就有 内核中) 扩展策略  (额外nginx模块)

内置策略 ip hash 、加权轮询

扩展策略 fair策略 通用hash  一致性hash

加权轮询策略 找 老大 老大不行了 找老二

首先将请求都分给高权重的机器,直到该机器的权值降到了比其他机器低,才开始将请求分给下一个高权重的机器

当所有后端机器都 down掉时,nginx会立即将所有机器的标志位清成初始状态,以避免造成所有机器都处在 timeout的状态

ip hash策略

nginx内置的另一个负载均衡的策略 流程和轮询很类似 只是其中的算法和具体的策略有些变化

ip hash算法是一种变相的轮询算法

fair策略

根据后端服务器的响应时间判断负载情况 从中选出负载最轻的机器进行分流

通用hash  一致性hash策略

通用 hash比较简单,可以以 nginx 内置的变量为key进行 hash 一致性hash采用了 nginx内置的一致性 hash环,支持memcache

nginx配置

http{

upstream cluster{[集群名称]

#ip_hash;

server 121.42.60.3:8080 weight 10;【服务器地址】

server srv2;

server srv3;

}

server{

listen 80;

location/{

add_header REAL_SERVER 8080;

}

location/{

proxy_pass http://cluster;【upstream】反向代理

}

}

}

四层负载均衡的实现

通过报文中的目标地址和端口,再加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器

lvs实现服务器集群负载均衡 Nat,dr  和tun

硬件 ifoo

可以先

流量优化 防盗链处理

前端优化 浏览器缓存 数据压缩 前端数据cdn cdn加速

独立的图片服务器

服务端 动态语言静态化 动态语言并发处理

数据层 数据的缓存  mysql的优化 大存储 分库分表 分区

web服务器的负载均衡

你可能感兴趣的:(face39 web服务器的负载均衡)