论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
软件与程序人生
›
云原生
›
从单体架构到分布式架构的演变历程
从单体架构到分布式架构的演变历程
守听
金牌会员
|
2025-1-22 21:39:59
|
显示全部楼层
|
阅读模式
楼主
主题
871
|
帖子
871
|
积分
2613
单体架构
单体架构,就是一台机器负责所有的工作。(此处假设是一个电商网站)
假如业务进一步发展,用户量和数据量都会随之增长。当一台主机无法满足需求时,就需要引入更多的主机并增加硬件资源。
而引入更多的主机就可以说是引入
分布式架构
了。
数据库和应用分离
应用程序和数据库服务器,分别放到差别主机上摆设了。
应用服务器:里面可能会包含很多的业务逻辑,可能就会吃CPU和内存
数据库服务器,需要更大的硬盘空间,更快的数据访问速度。可以配置更大硬盘的服务器,甚至还可以上SSD硬盘(固态硬盘)【机械硬盘更便宜,更慢】【固态硬盘更贵更快】
让应用服务和数据库服务分离可以达到更高的性价比
引入负载平衡=>集群
通过负载平衡器,把请求比较匀称的分发给集群中的每个应用服务器。
应用服务器每每比较泯灭 CPU 和内存资源。假如 CPU 或内存被耗尽,应用服务器就可能无法正常运行。引入更多的应用服务器可以有效办理这个标题。此时,引入负载平衡器,它就如同公司一个小组的领导,负责管理并将任务分配给各个组员。
用户的请求首先会抵达负载平衡器或网关服务器。假设存在一万个用户请求,由两个应用服务器分别负担五千个访问量。
当集群中的某个主机挂了,其他的主机仍旧可以负担服务,提高了整个系统的可用性。
是否会出现请求量大到连负载平衡器也无法承受的情况呢?这种情况是有可能发生的。此时,可以引入更多的负载平衡器(例如引入多个机房的负载平衡设备)。
引入读写分离、数据库主从结构
一个数据库节点作为主节点,其他N个数据库节点作为从节点。主节点负责 写 数据,从节点负责 读 数据。主节点需要把修改过的数据同步给从节点。
现实的应用场景中,读的频率是比写要高的。
主服务器一般是一个,从服务器可以有多个(一主多从),同时从数据库通过负载平衡的方式,让应用服务器举行访问
引入缓存,冷热数据分离
进一步提高了服务器对请求的处置惩罚能力。
在一个分布式系统中,Redis 通常扮演着缓存的脚色。
数据库自然存在一个标题,即响应速度相对较慢。将数据区分为 “热数据” 和 “冷数据”,把热点数据放置到缓存中,缓存的访问速度每每比数据库快很多。
数据库存储的仍旧是完整的全量数据。只是放一小部门热点数据(会频繁访问到的数据)到缓存中(Redis)。
此时,缓存服务器就帮助数据库服务器负重前行。。
如许也引入一个标题:数据库和缓存的数据划一性标题
引入分库分表
引入分布式系统,不但要能够应对更高的请求量(并发量),还要能够应对更大的数据量。
是否会出现一台服务器存不下数据的情况呢?答案是肯定的。
当一台主机存不下数据时,就需要多台主机来举行存储。
对数据库举行进一步拆分,即分库。原本一个数据库服务器上有多个数据库(这里指的是逻辑上的数据集合,通过 create database 创建的那个东西)。现在可以引入多个数据库服务器,每个数据库服务器存储一个或一部门数据库。
假如某个表特别大,大到一台主机存不下,也可以针对表举行拆分。
引入微服务
从业务层面进一步拆分应用服务器。从业务功能的角度出发,将应用服务器拆分为更多功能更单一、更简单、规模更小的服务器。
微服务本质上是在办理 “人” 的标题。因为当应用服务器变得更加复杂时,就需要更多的人来举行维护,这就涉及到分别构造结构和人员结构。
微服务的优势如下:
有效办理了人的标题。当应用服务器变得复杂后,需要更多人力维护,而微服务便于分别构造结构和人员结构。
采用微服务能够更便捷地实现功能复用。
可以针对差别的服务举行独立摆设。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
守听
金牌会员
这个人很懒什么都没写!
楼主热帖
【网络编程】从零开始搭建一个开源博客 ...
Vulnhub靶机-Al-Web-1
【CSDN云VS腾讯云】要不然怎么说CSDN开 ...
面试官:BIO、NIO、AIO是什么,他们有 ...
TCP协议
报错building for iOS Simulator, but ...
Python学习:import的正确用法
如何成为一名开发人员——第 3 部分: ...
全网最新的nacos 2.1.0集群多节点部署 ...
为什么要重写equals要重写hashcode方法 ...
标签云
挺好的
服务器
快速回复
返回顶部
返回列表