加入收藏 | 设为首页 | 会员中心 | 我要投稿 鹰潭站长网 (https://www.0701zz.cn/)- 图像处理、低代码、云通信、数据工具、物联设备!
当前位置: 首页 > 站长资讯 > 评论 > 正文

如何在网络攻击后恢复数据

发布时间:2021-02-05 14:23:43 所属栏目:评论 来源:互联网
导读:Step3:考虑系统目前需要优化的点 对系统进行抽象设计之后,你需要思考当前抽象的系统设计有哪些需要优化的点,比如说: 当前系统部署在一台机器够吗?是否需要部署在多台机器然后进行负载均衡呢? 数据库处理速度能否支撑业务需求?是否需要给指定字段加索引?是

Step3:考虑系统目前需要优化的点

对系统进行抽象设计之后,你需要思考当前抽象的系统设计有哪些需要优化的点,比如说:

当前系统部署在一台机器够吗?是否需要部署在多台机器然后进行负载均衡呢?

数据库处理速度能否支撑业务需求?是否需要给指定字段加索引?是否需要读写分离?是否需要缓存?

数据量是否大到需要分库分表?

是否存在安全隐患?

系统是否需要分布式文件系统?

......

Step4:优化你的系统抽象设计

根据 Step 3 中的“系统需要优化的点” 对系统的抽象设计做进一步完善。

系统设计该如何准备?

知识储备

系统设计面试非常考察你的知识储备,系统设计能力的提高需要大量的理论知识储备。比如说你要知道大型网站架构设计必备的三板斧:

  1. 高性能架构设计:熟悉系统常见性能优化手段比如引入 读写分离、缓存、负载均衡、异步等等。
  2. 高可用架构设计 :CAP 理论和 BASE 理论、通过集群来提高系统整体稳定性、超时和重试机制、应对接口级故障:降级、熔断、限流、排队。
  3. 高扩展架构设计 :说白了就是懂得如何拆分系统。你按照不同的思路来拆分软件系统,就会得到不同的架构。

实战

虽然懂得了理论,但是自己没有进行实践的话,很多东西是无法体会到的!

因此,你还要 不断通过实战项目锻炼自己的系统设计能力。

保持好奇心

多思考自己经常浏览的网站是怎么做的。比如:

  1. 你刷微博的时候可以思考一下微博是如何记录点赞数量的?
  2. 你看哔哩哔哩的时候可以思考一下消息提醒系统是如何做的?
  3. 你使用短链系统的时候可以考虑一下短链系统是如何做的?
  4. ......

技术选型

实现同样的功能,一般会有多种技术选择方案,比如缓存用Redis 还是 Memcached、网关用 Spring Cloud Gateway 还是Netflix Zuul2 。很多时候,面试官在系统设计面过程中会具体到技术的选型,因而,你需要区分不同技术的优缺点。

系统设计面试必知系统设计的时候必然离不开描述性能相关的指标比如 QPS。

性能相关的指标

响应时间

响应时间 RT(Response-time)就是用户发出请求到用户收到系统处理结果所需要的时间。

RT 是一个非常重要且直观的指标,RT 数值大小直接反应了系统处理用户请求速度的快慢。

并发数

并发数可以简单理解为系统能够同时供多少人访问使用也就是说系统同时能处理的请求数量。

并发数反应了系统的负载能力。

QPS 和 TPS

  • QPS(Query Per Second) :服务器每秒可以执行的查询次数;
  • TPS(Transaction Per Second) :服务器每秒处理的事务数(这里的一个事务可以理解为客户发出请求到收到服务器的过程);

书中是这样描述 QPS 和 TPS 的区别的。

QPS vs TPS:QPS 基本类似于 TPS,但是不同的是,对于一个页面的一次访问,形成一个 TPS;但一次页面请求,可能产生多次对服务器的请求,服务器对这些请求,就可计入“QPS”之中。如,访问一个页面会请求服务器 2 次,一次访问,产生一个“T”,产生 2 个“Q”。

吞吐量

吞吐量指的是系统单位时间内系统处理的请求数量。

一个系统的吞吐量与请求对系统的资源消耗等紧密关联。请求对系统资源消耗越多,系统吞吐能力越低,反之则越高。

TPS、QPS 都是吞吐量的常用量化指标。

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

(编辑:鹰潭站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读