后端术语快速扫盲

本文介绍了后端开发中的一些核心术语,如QPS、TPS、并发数和响应时间,阐述了它们在衡量系统处理能力中的作用。接着,讨论了分布式与集群的概念,解释了单台计算机和集群的高性能优化策略。此外,文章还探讨了高可用性,包括计算高可用和存储高可用,并提到了状态决策的三种方式。最后,详细讲解了数据库集群、负载均衡的种类以及限流、熔断和降级在防止服务雪崩中的重要性。通过本文,读者可以对后端系统的性能优化和稳定性有更深入的理解。
摘要由CSDN通过智能技术生成

640?点击蓝色字关注我们吧!


大家好我是张拭心,前段时间听完了某时间 app 上的后端架构课程,在公司也参加了一些后端方面的技术培训,想着要总结一下,就吹出了上一篇的牛。


然而在写作过程中,我发现很难用自己的话把学到的知识表述一遍。我们知道如果可以用自己的理解来描述一个知识点,证明这个知识已经和我们当前的知识点建立了联系,但后端开发我经验很少,学到的理论知识还基本是个孤岛,没办法有很多自己的理解。


文章的内容缺乏自己的创作,甚至直接是一些优质文章的复制,这在我看来最多能算作学习笔记,距离我当初吹的牛差的太远,希望读者朋友能够理解包容一下,谢谢了。


读完本文,希望你会对后端一些常用的术语有所理解。




我们知道,与前端关注 C 端体验不同,后端关注后台数据处理能力。用户量多与不多,访问次数多与少,在后端需要做的工作完全不同。


为了应对高并发的请求,后端系统需要具备高性能、高可用、可拓展等特点,为了实现这三点,要做的工作非常多,我们来简单了解下。


经常听到后台人员介绍自己开发的系统 QPS 多少多少,这是什么意思呢?

QPS(TPS)、并发数、响应时间(RT)

简单概括:这些数据代表着系统的处理能力。

  • QPS 表示的是:每秒处理完的请求数,一般针对单个接口服务,又叫“吞吐量”

  • TPS 表示的是:每秒处理完的事务数,一个事务在分布式中可能对应多个请求,因此这个指标一般针对整个系统

  • 并发数表示系统同时能处理的请求数,受线程数、 进程数、CPU 数等影响

  • 响应时间(RT):表示处理一次请求所需的平均时间,包括CPU运算、IO、外部系统响应等时间组成。

QPS(TPS)= 并发数/平均响应时间

一个系统吞吐量通常由QPS(TPS)、并发数两个因素决定。

每套系统这两个值都有一个相对极限值,在应用场景访问压力下,只要某一项达到系统最高值,系统的吞吐量就上不去了,如果压力继续增大,系统的吞吐量反而会下降,原因是系统超负荷工作,上下文切换、内存等等其它消耗导致系统性能下降。

做系统设计时,要考虑 CPU 性能、IO 操作耗时以及外部系统响应时间造成的响应时间影响,除了要评估出大概的 QPS、并发数后,还要考虑系统最高能承受的 TPS 多少。

640

拿淘宝来说,凌晨的访问量比较少,需要的机器不太多,但到了中午或者晚上访问量骤增,为了能灵活的应对这种不同时间要求不同的处理能力,同时尽可能地降低成本,使用云计算资源是一个好的出路。

分布式与集群

单个服务器终究性能有限,要实现能够处理高并发请求的系统,需要有集群,还得设计高性能的分布式系统来提系统的处理能力。

简单概括分布式与集群的区别:分工协作和一群人。

640

分布式和集群的概念似乎有些重复,都说的是好多机器,但实际上集群指的就是一群机器,没有额外的业务信息。而分布式强调的是将不同的业务分散到不同的机器上,分散每个服务器的压力。

上图中,集群指的是三个 Web Server,而分布式是指:客户端的访问经过负载均衡器分发到不同的 Web 服务器。


分布式包含的内容很多,如下图所示,有兴趣的朋友可以进一步学习:

640

分布式会带来很多的其他问题,最主要的就是一致性。

推荐阅读:小白科普:分布式和集群分布式与集群的区别是什么?什么是分布式系统,如何学习分布式系统

高性能

后台系统中的“高性能”主要包括两部分:

  1. 尽可能多地榨干单台计算机的性能

  2. 尽可能高的利益计算机集群的能力

单台计算机的高性能

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值