技术架构

news2024/11/24 6:08:40

一、单机架构

简介:应用服务和数据库服务共用一台服务器

出现原因:出现在互联网早期,访问量比较小,单机足以满足

架构工作原理:以电商为例,可以看到通过应用(划分了多个模块)和数据库在单个服务器上协作完成业务运行

技术案例:

优缺点:

优点:部署简单,成本低

缺点:存在严重的性能瓶颈,数据库和应用相互竞争资源

二、应用数据分离架构

简介:应用服务和数据库服务使用不同的服务器

出现的原因:单机存在严重的资源竞争,导致站点变慢

架构工作原理:以电商为例,可以看到应用(划分多个模块)和数据库在各自服务器上通过协作完成业务运行

技术案例:

优缺点:

优点:成本相对可控,性能相比单机有提升,数据库单独隔离,不会因为应用把数据库搞坏,有一定的容灾能力

三、应用服务集群架构

简介:引入了负载均衡,应用以集群方式运作

出现原因:单个应用不足以支持海量的并发请求,高并发的时候站点响应变慢

架构工作原理:以电商为例,可以看到应用不再是一个,而是编程了多个通过负载均衡来支持海量的并发请求

技术案例:

优缺点:

优点:

应用服务器高可用:应用满足高可用,不会一个服务出问题真个站点挂掉

应用服务具备一定高性能:如果不访问数据库,应用相关处理通过扩展可以支持海量请求快速响应

应用服务有一定的扩展能力:支持横向扩展

缺点:数据库是单点,没有高可用;运维工作增多,需要开发对应的工具对快速部署;硬件成本较高

四、读写分离/主从分离架构

简介:将数据库读写操作分散到不同的节点,数据库服务器搭建主从集群,一主多从,一主多从都可以,数据库主机负责写操作,从机只负责多操作

出现的原因:数据库成为瓶颈,而互联网一般读多写少,数据库承载压力大,主要是由于这些读的请求造成的,那么我们可以把读操作和写操作分开

架构工作原理:以电商为例,可以看到数据库服务器不在是一个,而是变成了多个数据库主机负责写操作,从机负责读操作,数据库主机通过复制将数据同步到从机

技术案例:

架构优缺点:

优点:数据库的读取性能提升;读取被其他服务器分担,写的性能被间接提升;数据库有缺点;从库,数据库的可用性提高了

缺点:热点数据频繁读取导致数据库负载很高;档同步挂掉,或者同步延迟较大时,写库和读库的数据不一致;服务器成本需要进一步增加

五、冷热分离架构

简介:引入缓存,实行冷热分离,将热点数据放到缓存中快速响应

出现原因:海量的请求导致数据库负载过高,站点相应再度变慢

架构工作原理:以电商为例,可以看到多了缓存服务器,对于任店数据全部都放到缓存中,不常用数据再去查询我们的数据库

优缺点:

优点:大幅降低对数据库的访问请求,性能提升非常明显

缺点:带来了缓存一致性,缓存击穿,缓存失效,缓存雪崩等问题;业务体量支持变大后,数据不断增加,数据库单库太大,单个表体量也太大,数据库查询会很慢,导致数据库再度成为系统瓶颈

六、垂直分库架构

简介:数据库的数据被拆分,数据库数据分布式存储,分布式处理,分布式查询,也可以理解为分布式数据库架构

出现原因:单机的写库会逐渐会达到性能瓶颈,需要拆分数据库,数据表的数据量太大,处理压力太大,需要进行分表,为降低运维压力,业界逐渐研发了分布式数据库,库表天然支持分布式。

架构原理:以电商为例,数据库是由多个主从库或存储集群构成,支持分布式大规模并行处理

技术架构:

优缺点:

优点:数据吞吐量大幅上升

缺点:跨库join、分布式事务等问题,这些需要对应的去进行解决,目前mpop都有对应的解决方案;数据库和缓存结合目前能够抗住海量的请求,但是应用的代码整体耦合在一起,修改一行代码需要真题重新发布

七、微服务架构

简介:微服务是一种架构风格,按照业务代码块来划分应用代码,使单个应用的职责更清晰,相互之间可以做到独立升级迭代。

出现原因:

扩展性差:应用程序无法轻松扩展,因为每次需要更新应用程序时,都必须重新构建整个系统

持续开发困难:一个很小的代码改动,也需要重新部署整个应用,无法频繁并轻松的发布版本

不可靠:即使系统的一个功能不起作用,可能导致整个系统无法工作

不灵活:无法使用不同的技术构建单体应用程序

代码维护难:所有功能耦合在一起,新人不止从何下手

架构原理:以电商为例,一个电商应用拆分成多个微服务程序,如用户服务,交易服务,商品服务,相互之间协作支持整个商城的应用

技术架构:

优缺点:

优点:

灵活性高:服务独立测试,部署,升级,发布

独立扩展:每个服务可以各自进行扩展

提高容错性:一个服务问题并不会让整个系统瘫痪

性能技术的应用容易:支持多种编程语言

缺点:

运维复杂度高:业务不断发展,应用和服务都会不断变多,应用和服务的部署变得复杂,同一台服务器上部署多个服务还要解决运行环境冲突问题,此外,对于大促这类需要动态扩缩容的场景,需要水平扩展服务的性能,就需要在新增的服务上准备运行环境,部署服务等,运维将变得十分困难

资源使用变多:所有这些独立运行的微服务都需要占用内存和CPU

处理故障困难:一个请求跨多个服务调用,需要查看不同服务的日志完成问题定位

八、容器编排架:

简介:借助容器化技术(如docker)将应用/服务可以打包为镜像,通过编排工具(如k8s)来动态分发和部署镜像,服务一容器化方式运行

出现原因:微服务拆分细,服务多部署工作量大,而且配置复杂,容易出错;微服务数量多扩缩容麻烦,而且容易出错,每次缩容后扩容有需要重新配置服务对应的环境参数信息;微服务之间运行环境可能冲突,需要更多的资源来进行部署或者通过修改配置来解决冲突

架构工作原理:以电商为例,一个商城应用拆分成了多个微服务器,如用户服务、交易服务和商家服务,每个微服务打包了到容器中

技术案例:

优缺点:

优点:

部署运维简单快速:一条命令可以完成几百个服务的部署或者扩缩容

隔离性好:容器与容器之间文件系统、网络等互相隔离,不会产生环境冲突

轻松支持滚动更新:盘本间切换都可以通过一个命令完成升级或者回滚

缺点:技术栈多,对研发团队要求高;机器还是需要公司自身来管理,在非大促的时候,还是需要闲置着大量的机器资源来应对大促,机器本身成本和运维成本都极高,资源利用率低,可以通过购买云厂商服务器解决

总结:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1679126.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

能自动化视频剪辑的开源工具来了 剪辑师、自媒体作者狂喜

项目简介 Funclip 是阿里巴巴通义实验室开源的一款视频剪辑工具,专门用于精准、便捷的视频切片。 它能够自动识别视频中的中文语音并允许用户根据语音内容来裁剪视频。该工具使用了阿里巴巴语音识别模型FunASR Paraformer-Large确保了剪辑的精准性。 你可以根据识…

聚鼎科技:装饰画行业到底怎么样

在当代社会,随着人们审美水平的提升和生活品质的追求,装饰画行业呈现出蓬勃的发展态势。这一行业不仅关系到文化艺术的传承与创新,也与市场经济紧密相连,其前景值得深入探讨。 装饰画行业的市场潜力巨大,它贯穿于家居装…

其它高阶数据结构②_图(概念+存储+遍历+最小生成树)

目录 1. 图的概念 2. 图的存储结构 2.1 邻接矩阵(后面算法所用) 2.2 邻接表 3. 图的遍历 3.1 BFS广度优先遍历 3.2 DFS深度优先遍历 4. 最小生成树 4.1 Kruskal算法 4.2 Prim算法 本篇完。 1. 图的概念 图是由顶点集合及顶点间的关系组成的一…

AI 绘画神器 Fooocus 图生图:图像放大或变化、图像提示、图像重绘或扩充、反推提示词、生成参数提取、所需模型下载

本文收录于《AI绘画从入门到精通》专栏,专栏总目录:点这里,订阅后可阅读专栏内所有文章。 大家好,我是水滴~~ 本文讲述 Fooocus 的图生图功能,主要内容包括:图像放大或变化、图像提示、图像重绘或扩充、反推…

没有疯狂内卷的日本智能机市场,小屏与设计仍旧是主流

如果聊起国内的智能机市场,我想大多数人的印象就是疯狂内卷。卷影像、卷屏幕、卷快充、卷性能……客观地说,国内的3C产品还是很有质价比的。不过在没有如此内卷的日本市场,各种小屏手机仍旧是主流。 除了苹果外,日本本土品牌的夏普…

SDL系列(四)—— 事件机制

事件循环 大多数多媒体程序依靠 事件系统 来处理输入。 SDL 为处理输入事件提供了灵活的 API 。 本质上, SDL 将来自设备(如键盘,鼠标或控制器)的输入记录为 事件 ,将它们存储在 “ 事件队列 ”中。 您可以将此…

3D轻量化引擎HOOPS Communicator在PLM全生命周期管理中的应用

在当今快速发展的工业领域,产品生命周期管理(PLM)是确保产品从设计到市场再到最终退役过程中信息一致性和流程效率的关键。 随着3D模型的日益复杂化和数据量的不断增长,传统的PLM系统面临着数据管理和渲染效率的挑战。HOOPS Comm…

pandas dataframe 的几种过滤数据的方法

pandas dataframe简介 Pandas是一个用于数据科学的开源Python库。这个库在整个数据科学行业被广泛使用。它是一个快速和非常强大的python工具来执行数据分析。Pandas为我们提供了读取、过滤、检查、操作、分析和绘制数据的命令。它使用内置函数加载以各种文件格式存储的数据&a…

圆片/圆盘测厚设备 HW01-SG系列单点测厚仪

关键字:圆片测厚仪圆盘测厚仪, 圆形测厚仪, 单点测厚仪, 汽车工件测厚仪, 产品简介: 测厚仪采用上下两个对射的激光位移传感器测量圆盘状物体边缘的厚度。圆盘放置在由步进电机驱动的托盘上,点按测量按钮托盘旋转一周,可测量被测物整个圆周上…

三:哈希map day6 哈希表理论基础 ● 242.有效的字母异位词 ● 349. 两个数组的交集 ● 202. 快乐数● 1. 两数之和

今日任务 ● 哈希表理论基础 ● 242.有效的字母异位词 ● 349. 两个数组的交集 ● 202. 快乐数 ● 1. 两数之和 今日任务 242.有效的字母异位词 题目 大型概括:map 的使用 1.题目描述-->思路: 给出两个string s,t; …

开放式运动耳机哪款好用?五款高性能值得信赖产品推荐

身为户外运动的达人,我发现开放式运动耳机简直是咱们运动时的最佳拍档,不管是跑步还是健身,开放式运动耳机最为舒适,它的妙处就在于不用塞进耳朵,这样既安全又卫生,户外动起来更放心。但市面上好坏参半&…

SDL系列(一)—— 小白入门

SDL ( Simple DirectMedia Layer ) 是一套开放源代码的 跨平台多媒体开发库 ,使用 C 语 言写成。 SDL 提供了数种控制图像、声音、输出入的函数,让开发者只要用相同或是相似的 代码就可以开发出 跨多个平台( Linu…

线上3D博物馆搭建简单吗?有何优势?有哪些应用场景?

随着科技的飞速发展,传统的博物馆参观方式正在经历一场前所未有的变革,在科技的“加持”下,不少博物馆凭借强大的技术、创意和美学实践,频频“出圈”,线上3D博物馆逐渐崛起,这不仅丰富了人们的文化体验&…

量子计算机接入欧洲最快超算!芬兰加快混合架构算法开发

内容来源:量子前哨(ID:Qforepost) 文丨浪味仙 排版丨沛贤 深度好文:1900字丨7分钟阅读 摘要:芬兰技术研究中心(VTT)与 CSC 展开合作,基于量子计算机超算架构进行算法开…

年度更新!统信UOS服务器版V20(1070)超越期待

不负广大客户期待! 统信UOS服务器版V20(1070)年度首更 功能更强大、性能更卓越、生态更丰富 助您畅享安全、便捷、高效的产品和服务 新平台,新生态 统信UOS服务器版始终坚持进行生态适配,目前已支持超过百万种兼容…

学习Nginx(五):虚拟主机配置

核心功能 在演示虚拟主机配置之前,来看一下Nginx配置的核心功能说明。 了解配置更多功能,请查看官方说明: http://nginx.org/en/docs/ngx_core_module.html [rootRockyLinux9 conf]# cat nginx.conf # 核心功能,全局配置 # 设置启…

TikTok Shop认知课 打通TK小店全流程

资料 001-先导课.mp4 002-如何用思维导图工具做课程笔记.mp4 003-TTS入驻模式.mp4 004-如何获取店铺.mp4 005-TTS店铺注册全流程,mp4 006-店铺整体运营思路.mp4 007-运营的几个误区.mp4 008-新店起店准备工作,mp4 009-规店铺风控注意事项,mp4 010-店铺基础设置之店铺…

怎么3d立面有些模型不能删除是什么原因怎么解决?---模大狮模型网

在进行3D建模和设计过程中,有时会遇到一些模型无法删除的情况,这可能会导致设计流程受阻,影响工作效率。本文将介绍在3D立面中遇到无法删除模型的原因以及解决方法,帮助您顺利解决这一问题,提高设计效率。 一、模型未正…

第二届视觉语音识别挑战赛 CNVSRC 2024 启动

由 NCMMSC 2024 组委会发起,清华大学、北京邮电大学、海天瑞声、语音之家共同主办的第二届中文连续视觉语音识别挑战赛 CNVSRC 2024 即日启动,诚邀参与报名。 视觉语音识别,也称唇语识别,是一项通过口唇动作来推断发音内容的技术。…

如何在华企盾DSC防泄密系统中设置文件自动加密?

在华企盾DSC系统中设置文件自动加密的过程,简单且用户友好,确保了企业数据的安全,同时不干扰日常工作流程。以下是设置文件自动加密的步骤: 系统安装与配置:确保华企盾DSC数据防泄密系统已经在企业的网络中正确安装和配…