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/

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

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

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • webpack打包优化_webpack打包及部署

    webpack打包优化_webpack打包及部署2019独角兽企业重金招聘Python工程师标准>>>…

    2022年10月21日
  • navigator对象属性_javascript构造函数

    navigator对象属性_javascript构造函数Navigator对象包含有关浏览器的信息。注意:没有应用于navigator对象的公开标准,不过所有浏览器都支持该对象。Navigator对象属性属性 说明 appCodeName 返回浏览器的代码名 appName 返回浏览器的名称 appVersion 返回浏览器的平台和版本信息 cookieEnabled 返回指明浏览器中是否启用cookie的布尔值 platform 返回运行浏览器的操作系统平台 userAgen.

    2022年9月11日
  • linux中查看网卡型号的命令[通俗易懂]

    linux中查看网卡型号的命令[通俗易懂]linux中查看网卡型号的命令

    2022年10月18日
  • Android常用控件

    Android常用控件TextView显示文本<TextViewandroid:id="@+id/text_view"android:layout_width="match_pa

    2022年7月2日
  • MPEG4、XVID、AVC有什么区别

    MPEG4、XVID、AVC有什么区别MPEG-4包含XviD和DivX,而AVC优于二者mpeg4DVD用的多,101mpeg4有AVC格式(加强版MP4)AVC/H.264是一种最新且技术含量最高的视频编码格式,由MPEG-4标准进行定义的、由ISO的MPEG和ITU的VCEG两个组织于2003年最终定稿。而AVC/H.264标准本身则是由包括来自MPEG和VCEG专家的JointVideoTeam(JVT)开…

    2022年9月19日
  • SpringBoot + Vue 开发前后端分离的旅游管理系统

    SpringBoot + Vue 开发前后端分离的旅游管理系统旅游管理系统项目简介需求分析数据库建表环境搭建引入依赖(pom.xml)配置文件(application.properties)前端页面注册功能验证码工具类项目简介所需技术栈:后端技术栈:springboot+mybatis前后端分离:axios、json前端技术栈、技术架构:Vue、node.js要求:了解Vue组件之前的知识对springboot+mybatis较熟悉开发流程:需求分析库表设计编码(项目环境搭建+编码)项目调试项目部署上线需求分析

    2022年5月12日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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