PHP如何解决网站大流量与高并发的问题(三)

PHP如何解决网站大流量与高并发的问题(三)

大家好,又见面了,我是全栈君。

七层负载均衡的实现

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

Nginx的proxy是一个很强大的功能,实现了7层负载均衡

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

配置简单灵活

能自动提出工作不正常的后端服务器

上传文件使用异步模式

支持多种分配策略,可以分配权重

Nginx负载均衡有内置策略,扩展策略两种方式

内置策略

  • IP Hash

    流程和轮询很相似,是一种变相的轮询算法

  • 加权轮询

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

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

扩展策略

  • fair 策略

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

  • 通用hash

    以nginx内置的变量为key进行hash

  • 一致性hash

    支持mem

Nginx配置方案

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#nginx.conf
http{
upstream cluster{
server srv1;
server srv2;
server srv3;
}
server {
listen 80;
location / {
proxy_pass http://cluster
}
}
}

四层负载均衡实现

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

LVS实现服务器集群负载均衡有三种方式NAT,DR,TUN

转载:https://zhyunfe.github.io/2017/10/03/php-interview-prepare-hc-3/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/112152.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号