分布式系统架构解决的三大问题

 我来答
一袭可爱风1718
2022-07-02 · TA获得超过1.3万个赞
知道大有可为答主
回答量:6801
采纳率:99%
帮助的人:40万
展开全部

分布式系统定义:建立在网络之上的软件系统,彼此之间通过消息传递进行通信和协调的系统,展 现给用户是一个统一的整体。

分布式系统架构需要解决三大问题

什么是吞吐量?

能接收多少请求,能返回多少请求。一般单位时间内能处理多少请求,如每秒处理多少请求,一般叫QPS,如果更严格的QTS每秒处理事务数

这里有几个概念表达同一件事

1.吞吐量:指QPS

2.并发量:指同一时间内的连接数

3.性能:指响应时间

这里数据来源于压测,并发量越大,QPS也会升高,在并发量一定范围内响应时间是不变的,当并发量无线增大时,响应时间会增高,增高到一定程度就会下降。

如何提升吞吐量?

单机性能不足需要扩容部署,多台机器同时提供服务,形成集群部署,流量请求过来均匀的把流量分配到每台机器。如果依然存在瓶颈,先扩容后找原因,最终决定性能的可能不是应用系统,可能是数据库,因为它是长连接独占的同步交互。如果数据库性能不足,应用扩容太多也没有用,因为最终流量都要达到数据库中,因此数据库也需要扩容。

总结:要想提升吞吐量,唯一解决办法就是扩容,扩容不但解决消息堆积问题,还能提升请求耗时。

如何提升可用性?

解决可用性的唯一手段就是冗余,冗余就要解决副本与副本之间的一致性问题,分布式一致性问题就构成了分布式理论的核心,即CAP问题。

C:一致性

A:可用性

P:分区容错性

分布式场景中当发生故障时P是必须存在,当解决一致性时无法解决可用性,当解决可用性时无法解决一致性,所以三种不都能同时满足,只能选择任意两种。要么选择CP,要么选择AP。注意只有在发生故障时才会这么选择,当正常场景下三种均满足。

如何解决扩展性?

扩展性分功能扩展和集群扩展。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式