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

接入层架构演变

1、单体架构

  • 请求过程

浏览器的请求通过 DNS Server 解析到指定的 IP 地址,浏览器通过 IP 地址访问 Web Server

  • 缺点

当到达 Web Server 的性能瓶颈时(瓶颈受到CPU,内存,io,带宽影响),无法进行扩容,并且单体架构容易宕机
 

2、多机部署,DNS轮询

为解决单机架构的瓶颈问题,使用DNS轮询便于横向扩展

  • 请求过程

浏览器的每次请求通过 DNS Server 会解析到不同的 IP 地址,浏览器通过不同的 IP 地址访问不同的 Web Server

  • 缺点

DNS轮询只解析出对应的IP地址,但无法保证IP地址对应的服务是否是健康的;同样没解决单机的性能瓶颈问提

3、Nginx反向代理

中间加了一层反向代理层,以 Nginx 为例,对整个系统性能的提升是很明显的,只需要暴露一个外网 IP 地址,相比于DNS轮询方式,如果有一台 Web Server 宕了,此时 Nginx 就不会将请求转发给这台服务器

  • 请求过程

 浏览器的请求通过 DNS Server 解析到指定的 IP 地址,该 IP 地址对应的是反向代理层,此时将请求转发到身后的 Web Server 集群中

  • 缺点

如果Nginx挂了,会倒是整个服务不可用,无法做到高可用

4、keepalive技术

对反向代理层进行改造,新部署一台 Nginx 服务,并使用 keepalive 技术提供相同的虚拟 IP (VIP),此时保障了 Nginx 的高可用。增加了 Nginx 的高可用性,其实 Nginx 此时还是单点使用,资源占用率只有 50%,存在资源浪费的现象

5、 Lvs/F5 + DNS 轮询

这种方法其实并不是解决 Nginx 的单点问题的,而是解决 Nginx 的性能问题的,因为 Nginx 只是软件层面的反向代理,而使用 Lvs 技术,或者 F5,它是实施在硬件层面的,性能相较于软件层面的 Nginx,抗压能力又上了一个新的台阶。并且几乎已经满足了所有公司的需求。

总结

(1)单体架构,要解决性能扩展问题,早期,使用DNS轮询架构;

(2)现在,可以使用nginx反向代理架构;

(3)反向代理,不高可用,需要进一步升级为高可用反向代理架构;

(4)高可用反向代理,扩充性能,可以使用多级(LVS&F5)反向代理架构;

(5)多级反向代理架构,扩充到无限性能,使用DNS轮询架构;

(6) DNS轮询,解决性能扩展问题;VIP+keepalived,解决高可用问题;
 

http://www.xdnf.cn/news/2815.html

相关文章:

  • Nginx 核心功能与 LNMP 架构部署
  • C#解析USB - HID手柄上摇杆按键数据
  • Ubuntu 20.04 安装 ROS 2 Foxy Fitzroy
  • xilinx的XCI文件设定输出目录
  • MIT XV6 - 1.1 Lab: Xv6 and Unix utilities - sleep 是怎样练成的?
  • [AI]browser-use + web-ui 大模型实现自动操作浏览器
  • 元宇宙2.0:当区块链成为数字世界的宪法
  • 【C++初阶】--- 模板进阶
  • (三十二)Android开发中AppCompatActivity和Activity之间的详细区别
  • 01_微服务常见问题
  • 如何利用Rust提升Linux服务器效率(详细操作指南)
  • dma_request_slave_channel_compat 与 dma_request_channel 的区别
  • 【C语言操作符详解(二)】--结构成员访问操作符,操作符的属性,表达式求值
  • springboot中有关数据库信息转换的处理
  • __VUE_PROD_HYDRAION_MISMATCH_DETAILS__在vue.config.js怎么配置
  • 外部存储器接口:EMIF总线
  • Jetson Xavier NX EMMC版本刷机
  • 机器人--相机
  • 【MCP Node.js SDK 全栈进阶指南】高级篇(4):自定义传输层开发
  • 前端在平常的开发中高度还原ui图的思考规范
  • 阿里开源Qwen3:大语言模型的新突破
  • AI驱动软件工程:SoftEngine 方法论与 Lynx 平台实践分析
  • 「Mac畅玩AIGC与多模态08」开发篇04 - 基于 OpenAPI Schema 开发专用 Agent 插件
  • MySQL 8.4.4 安全升级指南:从漏洞修复到版本升级全流程解析
  • Spring MVC中自定义日期类型格式转换器
  • 单片机-89C51部分:8、定时器
  • 6.3 数据分析与决策支持:数据洞察生成与决策辅助系统
  • 机器学习实操 第一部分 机器学习基础 第6章 决策树
  • jmeter-Beashell获取http请求体json
  • 在K8S迁移节点kubelet数据存储目录