当前位置: 首页 > news >正文

架构实战——互联网架构模板(“网络层”技术)

目录

    • 一、负载均衡
      • 1.1、DNS
        • 1.1.1、DNS 负载均衡的优点
        • 1.1.2、DNS 负载均衡的缺点
      • 1.2、Nginx 、LVS 、F5
        • 1.2.1、软件和硬件的区别
        • 1.2.2、4 层和 7 层的区别
    • 二、CDN
    • 三、多机房
      • 3.1、同城多机房
      • 3.2、跨城多机房
      • 3.3、跨国多机房
    • 四、多中心

本文来源:极客时间vip课程笔记

一、负载均衡

  • 负载均衡就是将请求均衡地分配到多个系统上。使用负载均衡的原因也很简单:每个系统的处理能力是有限的,为了应对大容量的访问,必须使用多个系统。

1.1、DNS

  • DNS 是最简单也是最常见的负载均衡方式,一般用来实现地理级别的均衡

    例如,北方的用户访问北京的机房,南方的用户访问广州的机房。

  • 一般不会使用 DNS 来做机器级别的负载均衡,因为太耗费 IP 资源了。

    例如,百度搜索可能要 10000 台以上机器,不可能将这么多机器全部配置公网 IP,然后用 DNS 来做负载均衡。

1.1.1、DNS 负载均衡的优点
  • 通用(全球通用)、成本低。
1.1.2、DNS 负载均衡的缺点
  • DNS 缓存的时间比较长。即使将某台业务机器从 DNS 服务器上删除,由于缓存的原因,还是有很多用户会继续访问已经被删除的机器。
  • DNS 不够灵活。DNS 不能感知后端服务器的状态,只能根据配置策略进行负载均衡,无法做到更加灵活的负载均衡策略。比如说某台机器的配置比其他机器要好很多,理论上来说应该多分配一些请求给它,但 DNS 无法做到这一点。
  • 对于时延和故障敏感的业务,有实力的公司可能会尝试实现 HTTP-DNS 的功能,即使用 HTTP 协议实现一个私有的 D
http://www.lryc.cn/news/603598.html

相关文章:

  • MySQL MVCC:并发神器背后的原理解析
  • ElementUI表格 el-table实现自动循环滚动
  • MySQL图解索引篇
  • JavaWeb(苍穹外卖)--学习笔记15(分页查询PageHelper)
  • JavaWeb 入门:JavaScript 基础与实战详解(Java 开发者视角)
  • 一个人开发一个App(数据库)
  • vue3组件通信的几种方法,详解
  • ​第七篇:Python数据库编程与ORM实践
  • Vue 2.0响应式原理深度解析
  • 【C++算法】82.BFS解决FloodFill算法_被围绕的区域
  • 基于SpringBoot和Leaflet集成在线天气服务的区县当前天气WebGIS实战
  • 【CSS】盒子类型
  • Linux网络:多路转接 select
  • 7月29号打卡
  • 个人健康管理小程序(消息订阅、Echarts图形化分析)
  • C# CAN通信上位机系统设计与实现
  • Hyperchain安全与隐私机制详解
  • Prometheus + Grafana + Micrometer 监控方案详解
  • CodeRush AI 助手进驻 Visual Studio:AiGen/AiFind 亮相(三)
  • 【数据可视化-74】电信用户流失数据可视化分析:Python + Pyecharts 炫酷大屏(含完整的数据,代码)
  • Visual Studio的妙用
  • 【22】C# 窗体应用WinForm ——定时器Timer属性、方法、实例应用,定时切换画面
  • 从github同步新项目的两次挫折-2025.7.29
  • 工业补贴携手华为云,重塑汽车零部件供应链管理新趋势
  • 设计模式:状态模式 State
  • Ragflow 文档处理深度解析:从解析到存储的完整流程
  • Go语言新手村:轻松理解变量、常量和枚举用法
  • [工具类] 分片上传下载,MD5校验
  • 【Spring Boot 快速入门】三、分层解耦
  • 飞算JavaAI:数据库插件安装与表结构设计的智能革命