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

常见架构类型

目录

1.单机架构

2.应用数据分离架构

 3.读写分离架构

4.冷热分离架构

5.垂直分库架构

6.微服务架构

7.容器编排架构


1.单机架构

单机架构是简单的将应用服务和数据库服务部署到同一台机器上。

缺点:存在很大的性能限制。


2.应用数据分离架构

引入负载均衡,将应用负载均衡式的部署到不同的服务器上。

比起单机,多了一个负载均衡模块来平衡地分配任务给不同的主机。

缺点:硬件成本上升

           数据库性能存在瓶颈


 3.读写分离架构

引入数据库主从模式,将写的数据库作为主数据库(只能有一个,防止脏数据),将读的数据库作为从数据库。

 

缺点:由于数据库数据需要同步(从库复制主库),同步存在很大的性能限制。


4.冷热分离架构

在访问数据库之前加入一个缓存库(redis),存储经常被访问的数据(热点数据),访问冷门数据时再访问数据库,从而减少数据库负载。

缺点:缓存存在击穿问题


5.垂直分库架构

一个主从数据库集群 ==> 多个负责不同功能的主从数据库集群。

 缺点:代码强耦合


6.微服务架构

将应用服务拆为多个微服务,同时实现微服务复用。

也可以解决系统升级必须重构的问题和单个项目代码强耦合的问题。

 缺点:运维压力很大


7.容器编排架构

借助docker等容器化技术,将应用服务打包成镜像,通过编排工具如k8s来动态分布和部署镜像。

实现快速部署,减少运维压力,并且解决配置冲突问题。

总结:本质上架构负载的提升只有两个方向:垂直方向和水平方向。

垂直方向:

        通过加上层或者下层来将请求分流。

水平方向:

        增加兄弟来为自己减少压力,团结力量大。

http://www.lryc.cn/news/127345.html

相关文章:

  • 搭建Web服务器并用cpolar发布至公网访问
  • NanoPi NEO移植LVGL8.3.5到1.69寸ST7789V屏幕
  • 阿里云服务区ECS,申请免费的服务器之后,如何使用xshell 登陆,找不到匹配的host key 算法
  • 【CTF-web】备份是个好习惯(查找备份文件、双写绕过、md5加密绕过)
  • C#和Java的大端位和小端位的问题
  • 如何在 iOS 上安装并使用 ONLYOFFICE 文档
  • 【AI】如何用AI生成XMind思维导图
  • k8s问题汇总
  • 打造专属照片分享平台:快速上手Piwigo网页搭建
  • OpenAI全球招外包大军,手把手训练ChatGPT取代码农 ; 码农:我自己「杀」自己
  • 船舶法兰盘法兰管件3D扫描尺寸测量|三维扫描检测|CAV测量-CASAIM
  • 每天一道leetcode:1218. 最长定差子序列(动态规划中等)
  • C#的 Settings.Settings配置文件的使用方法
  • 神经网络基础-神经网络补充概念-35-为什么正则化可以减少过拟合
  • Glide 的超时控制相关处理
  • 使用requests如何实现自动登录
  • 【代码随想录-Leetcode第六题:209. 长度最小的子数组】
  • 部署LVS-DR群集
  • 建库、建表、修改表、复制表、字符类型、数值类型、枚举类型、日期时间类型、检索目录、数据导入命令、数据导入步骤、数据导出命令、非空、默认值、唯一索
  • iview默认样式覆盖
  • System.Text.Encoding不同字符编码之间进行转换
  • 计组 | DMA
  • 在服务器开jupyter notebook server
  • Jetpack 中的 databinding - 使用篇
  • C++之signal信号应用实例(一百七十六)
  • 【数据分析入门】Numpy进阶
  • 数据结构的图存储结构
  • 爬虫IP时效问题:优化爬虫IP使用效果实用技巧
  • 【uniapp】picker mode=“region“ 最简单的省市区 三级联动
  • 解决Java中的“Unchecked cast: java.lang.Object to java.util.List”问题