提交 2ab4a2cc 编写于 作者: 沉默王二's avatar 沉默王二 💬

408考研

上级 60fdb6f4
......@@ -490,6 +490,7 @@
- [程序员 35 岁危机,如何破局?](docs/xuexijianyi/35-weiji.md)
- [不到 20 人的 IT 公司该去吗?](docs/xuexijianyi/20ren-it-quma.md)
- [本科生如何才能进入腾讯、阿里等一流的互联网公司?](docs/xuexijianyi/benkesheng-ali-tengxun.md)
- [计算机考研 408 统考该如何准备?](docs/xuexijianyi/408.md)
# 知识库搭建
......
......@@ -662,6 +662,7 @@ export const sidebarConfig = sidebar({
"35-weiji",
"20ren-it-quma",
"benkesheng-ali-tengxun",
"408",
],
},
{
......
......@@ -478,7 +478,7 @@ head:
- [程序员 35 岁危机,如何破局?](xuexijianyi/35-weiji.md)
- [不到 20 人的 IT 公司该去吗?](xuexijianyi/20ren-it-quma.md)
- [本科生如何才能进入腾讯、阿里等一流的互联网公司?](xuexijianyi/benkesheng-ali-tengxun.md)
- [计算机考研 408 统考该如何准备?](xuexijianyi/408.md)
## 知识库搭建
......
---
title: 假如我是核酸系统架构师,我会...
shortTitle: 假如我是核酸系统架构师,我会...
description: 谈谈自己对核酸系统设计的理解!
author: 勇哥
category:
- 微信公众号
head:
---
>[二哥的编程星球](https://mp.weixin.qq.com/s/e5Q4aJCX9xccTzBBGepx4g)已经有 **890 多名** 球友加入了,如果你也需要一个良好的学习氛围,[戳链接](https://mp.weixin.qq.com/s/e5Q4aJCX9xccTzBBGepx4g)加入我们吧!这是一个Java学习指南+编程实战+LeetCode 刷题的私密圈子,你可以向二哥提问、帮你制定学习计划、和球友一起打卡成长,冲冲冲。
成都核酸检测系统“崩溃”事件,将东软推至风口浪尖,同时也在技术圈内引发了广泛的讨论。
**开发一个不崩溃的核酸系统到底难不难**
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/weixin-jiarwshsjtjgswh-52f4b36e-dc7d-4607-b364-59ab9c08be3d.jpg)
这篇文章,我会想象自己是核酸系统架构师,谈谈自己对核酸系统的理解。
## 1 明确系统边界
作为架构师,首先需要**明确系统边界**
核酸检测核心流程:
1. 医护人员打开核酸系统的手机端应用,录入试管编码 ;
2. 医护人员扫描居民的健康码;
3. 医护人员采集咽拭子标本 ;
4. 检测结束之后,医护人员将检测标本送至检测中心;
5. 检测中心将检测结果提交到核酸系统,然后核酸系统会将核酸结果同步到健康码系统。
成都核酸系统崩溃时,流程阻塞在步骤 1和2。
本文里我们提到的核酸系统,也就是指**医护人员使用的系统**。而核酸检测系统会将检测结果同步到健康码系统 , 健康码系统面向的是大众居民 , 是高频场景。
对于成都市居民来讲,与他们关系最为密切的就是两套系统。
1. **核酸系统**:核酸医护人员使用 , 东软负责开发和维护;
2. **天府健康通**:广大市民使用,腾讯研发和维护。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/weixin-jiarwshsjtjgswh-b74cfa87-ed22-4b1b-bfe7-404bee30d8e6.jpg)
## 2 崩溃疑云
核酸系统软件是属于政府购买 (TO G),市民使用 (TO C) 。
**核酸系统是一个多方协作的系统,它不仅直接和政府有关系,还涉及到多个厂商,一个系统工程背后,除了系统集成商之外,包括多个分包商**。比如西安的一码通,曾集结了电信、东软、美林和安恒等公司。
正因为这套系统涉及面之广,当成都核酸系统崩溃时,我们需要冷静下来,缕清条理。
我们先从**基础设施层**的维度来分析,很多互联网公司会将自己的服务部署在阿里云或者腾讯云,部署方便,也可以动态扩容。
那么核酸系统部署在哪里呢?假如核酸系统是以 SAAS 形态部署(东软自建机房,或者东软采用阿里云/腾讯云服务),那么成都核酸崩溃事件,东软必然脱不了干系 。但东软随后硬气的发了公告:
> 系统上线后,发现有响应延迟、卡顿等现象,东软集团第一时间组织专家组和坚守现场的公司技术人员,与成都市相关部门一起,排查事故原因,强化安全防护,保证系统运行。**据技术专家研判,目前出现的系统响应延迟、卡顿等现象与核酸检测系统软件无关。**9 月 3 日零点左右,在进行网络调整之后,系统运行平稳顺畅,效率得到极大提升,当日共完成 1200 万样本采集量。
假如核酸系统没有问题,会不会是网络问题呢?
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/weixin-jiarwshsjtjgswh-0b92d320-99cf-4a76-95ce-66c475f02e62.jpg)
成都核酸系统奔溃时,医护人员以为是信号问题,纷纷举起手中的手机,捕捉信号,而排队的市民却可以刷抖音,头条。
9 月 3 日下午 4 点 32 分,**四川省通信管理局**发文称,“全市通信网络运行平稳,各核酸检测点移动网络覆盖良好,没有出现网络拥塞和故障。”
我们基本可以做出判断:**成都核酸系统部署在政务云**,也就是政府部门提供基础设施 ,应用开发商将软件部署在政务云机房里 。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/weixin-jiarwshsjtjgswh-d5a62111-4e98-4be7-ab4a-194632a252f5.jpg)
核算系统崩溃的可能原因:
1. **政务云机房问题**
网络问题(负载均衡,带宽,防火墙), 或者机房服务器出现故障;
2. **核酸系统软件问题**
核酸检测软件确实承载能力有限,软件崩溃了。
## 3 应用层设计
核酸系统是属于高并发应用吗?这里我们做个估算:
* **人口估算法**
据统计成都市人口 2 千万多人,假设集中在 6 小时内做核酸,平均每小时支持的并发人数是 3531666。每秒支持的并发约为 1000。基于检测人员的集中度不均衡的因素,假设高峰期是平均并发的 2-3 倍。则每秒并发“核酸登记”2000-3000 左右。
* **检测点估算法**
今年 5 月份,上海抗疫期间一共有 15000 + 核酸检测点 ,我们假设成都有和上海一样多的核酸检测点。市民在排队核酸检测时,核酸医护人员扫居民健康码的时间间隔在 10 秒到 15 秒之间,每个核酸检测点并行两排检测通道,那么每秒并发“核酸登记”也是在 2000-3000 左右。
通过两种估算方法,我们发现:**核酸系统的请求并发度并不高**
虽然并发度不高,但每天的业务数据条数量级较高 ,按照东软的公告,每天可以完成 1200 万核酸样本采集。
假设核酸检测记录一天 1000 万条数据,一周就有 7000 万条,1 个月就能达到 3 亿条数据。那么势必要使用**分库分表**
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/weixin-jiarwshsjtjgswh-7eca69e0-f231-4cad-b3e7-3414d3e60dce.jpg)
1. 医护人员扫市民的健康码 ,核酸登记的请求发送到 api 网关 , api 网关将请求转发到核酸系统;
2. 缓存存储检测点,检测批次等基础信息,核酸系统通过缓存判断业务请求是否合法,若合法,则组装真正的入库的数据;
3. 核酸系统调用分库分表中间件将数据插入到数据库 。
看起来,核酸系统的架构设计还是比较简单清晰的,核心点在于用**分库分表硬挡高流量访问**
但现在这种模式就完美了吗 ?
我们举湖北鄂通码举例,核酸登记后,健康码在 10~20 分钟状态会修改成绿色并标识成:**核酸已检测**,也就是核酸已检测的状态会异步同步到健康码服务。
我们不由得想到了消息队列 MQ ,MQ 最大的优势在于:**异步****解耦**,MQ 模式还有一个优点:当流量激增时,消息队列还可以起到**消峰**的作用。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/weixin-jiarwshsjtjgswh-54d3cd0e-cf55-40bf-8d8d-b0959eaa7b3b.jpg)
MQ 方案里,核心流程如下:
1. 医护人员扫市民的健康码 ,核酸登记的请求发送到 api 网关 ,api 网关将请求转发到核酸系统;
2. 缓存存储检测点,检测批次等基础信息,核酸系统通过缓存判断业务请求是否合法,若合法,则组装真正的入库的数据;
3. 核酸系统将检测记录发送到消息队列,返回给前端响应成功;
4. 消费者接收消息后调用分库分表中间件将数据插入到数据库 ;
5. 消费者接收消息后同步状态到健康码服务。
在架构设计中,并不是引入了组件就完事了,更需要考虑如何精准的使用组件。
比如,使用消息队列 kafka ,如何保证不丢消息,如何保证高可用。使用了分库分表中间件,是不是需要考虑数据异构,以及冷热分离等。
## 4 监控平台
我们经常讲:研发人员有两只眼睛,一只是监控平台,另一只是日志平台。
在对性能和高可用讲究的场景里,监控平台的重要性再怎么强调也不过分。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/weixin-jiarwshsjtjgswh-e9ae7cc6-76a2-42b9-827d-a471c97576ca.jpg)
**▍ 一、基础运维监控**
基础运维监控负责监控服务器的 CPU、网络、磁盘、负载、网络流量、TCP 连接等指标,并且通过设定报警阈值实时通知指定负责人。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/weixin-jiarwshsjtjgswh-ad1af175-cf6d-44f9-92ed-ee6dbbb2e6fc.jpg)
我们在**基础设施层**这一节里提到:
核酸系统崩溃时,成都政务云不能提供畅通的核酸检测服务 , 可能原因之一是**政务云机房问题**
当政务云机房出现问题时,基础运维监控可以帮助运维人员更快的发现问题,并制定解决策略。
**▍ 二、应用系统监控**
应用系统监控是研发人员接触最多的一种监控类型,系统出现瓶颈的时候,应用系统监控会有最直观的体现。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/weixin-jiarwshsjtjgswh-204d7a63-758d-4f00-b8ad-0ff7aec68e86.jpg)
笔者一般会关注性能监控,方法可用性监控,方法调用次数监控,JVM 监控这四大类。
* 性能监控
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/weixin-jiarwshsjtjgswh-82086bdd-ef5b-4101-8416-ed3412725b15.jpg)
性能监控不同时间段性能分布,实时统计 TP99、TP999 、AVG 、MAX 等维度指标,这也是性能调优的重点关注对象。
* 方法调用次数监控
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/weixin-jiarwshsjtjgswh-f20b0d63-ce06-453a-87d6-04fa3006737a.jpg)
方法调用次数监控可以按照机器,时间段分析接口或者方法的调用次数,当大流量来袭时,可以清晰的看到请求的波动。
* 方法可用性监控
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/weixin-jiarwshsjtjgswh-68d79f70-87a0-4558-bfdd-47ec6edb725c.jpg)
方法可用性监控是指:当接口被调用或者方法被执行,可能返回异常或者方法执行抛异常,分析该方法是否调用正常,当系统出现严重问题时,方法可用率是一个重要的参考指标。
* JVM 监控
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/weixin-jiarwshsjtjgswh-8e57007b-a0c8-4194-9b21-6340efafeabd.jpg)
JVM 监控是 JAVA 工程师特别关注的监控类型,我们会重点关注:堆内存,GC 频率 ,线程数等等。
**▍ 三、业务监控**
业务监控功能是从业务角度出发,各个应用系统需要从业务层面进行哪些监控,以及提供怎样的业务层面的监控功能支持业务相关的应用系统。
具体就是对业务数据,业务功能进行监控,实时收集业务流程的数据,并根据设置的策略对业务流程中不符合预期的部分进行预警和报警,并对收集到业务监控数据进行集中统一的存储和各种方式进行展示。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/weixin-jiarwshsjtjgswh-d1ec3ced-95c0-4b44-8df3-7a2c4df2294a.jpg)
比如订单系统中有一个定时结算的服务,每两分钟执行一次。我们可以在定时任务 JOB 中添加埋点,并配置业务监控,假如十分钟该定时任务没有执行,则发送邮件,短信给相关负责人。
## 5 多方协作
很多同学都指责东软失职:“核酸系统在仓促上线之后,到底有没有进行完备的性能测试 ”。
确实,性能测试非常重要 ,通过压测可以知道系统的极限值是多大,当系统承受不住访问时,就会暴露出瓶颈,如服务器 CPU、数据库、内存、响应速度等,从而促使研发团队进行再优化。
这里我们先按捺指责的冲动,**核酸系统是一个多方协作的系统,它不仅直接和政府有关系,还涉及到多个厂商,一个系统工程背后,除了系统集成商之外,包括多个分包商**
《核酸检测系统崩溃,东软该不该背锅?》这篇文章提到:
> 原则上,监督管理部门要把所有厂商叫在一块协同作战。但没有顶层统筹的强压之下,厂商之间的沟通和协调很难达成。大多数情况之下的压测,各个厂商有点“各自为政”的意思。一般,软件厂商会自己测试自己,鲜少几家联合起来测验。“不同厂商坐在一起的时候,大家都觉得自己没有问题,都会觉得是别人的问题。理由也会一致,我们的系统在别的地方跑过,没出岔子"。甚至应对这一局面,各家的心思都极为微妙。“每个厂家在系统上的投入都是一笔不菲的开支,在应急状态之下,如果上面领导没表态,也没明确是公益性质还是有偿的付出,厂家相应选择也是谨慎的。” 因此大多数情况之下的压测,各个厂商有点“各自为政”的意思。一般,软件厂商会自己测试自己,鲜少几家联合起来压测。
这篇文章的一个观点,“**这是技术层面之外,一个城市应急预案的管理能力问题**。” 我深以为然。
## 6 总结
假如我是核酸系统的架构师。。。。
1. 我会使用消息队列 + 分库分表来最大程度提升系统的吞吐量。
2. 我会在使用消息队列中间件的时候,重点关注如何不丢失消息,消息系统如何做到高可用。
3. 我会使用分库分表中间件时,重点关注冷热分离,如何将数据异构到数据仓库。
4. 我会在政务云部署监控系统,提供基础运维监控,应用系统监控,业务监控的能力,当系统出现问题时,团队可以以最快的速度发现问题,并解决问题。
**可是**,核酸系统是一个多方协作的系统,我们不仅需要和政府沟通,也需要和众多三方厂商协作。
也许,当我提出需要更多服务器预算时,政府部门的预算并不充足,或者就算充足了,走流程也要一个月的时间;
也许,当我提出需要部署监控系统,公司会以人力不足为由或者政务云硬件资源不足,否定我的方案;
也许,当我联调时发现一个三方接口速度慢,排查起来(沟通成本)需要 4-7 天时,我也不得不沉浸在琐事中;
直到最后,当系统崩溃时,我也只能叹息到:“**尊重技术,尊重专业**”。
* * *
没有什么使我停留——除了目的,纵然岸旁有玫瑰、有绿荫、有宁静的港湾,我是不系之舟。
- [一套KTV管理系统,估价3万还是30万?](https://mp.weixin.qq.com/s/zYLEUmbfmiKeFk03e1TxbA)
- [撸一个多线程永动任务](https://mp.weixin.qq.com/s/6z06U97fmrkKB-J1umFTVQ)
- [本次秋招最差面试体验给到华为!](https://mp.weixin.qq.com/s/wfp8LBPPxHE_CM4d3wARQw)
- [给offer的公司不问技术细节?](https://mp.weixin.qq.com/s/QYFB2NHhyZSBfdgSUcZU5g)
- [入职一个月,就想跑路了?](https://mp.weixin.qq.com/s/SfEUk-4hE6ezUk2Lu6cd2g)
- [3 个令你耳目一新的练手项目](https://mp.weixin.qq.com/s/CdIin5I7VvfaSk4z9J0FwQ)
- [秋招还没offer,正常吗?](https://mp.weixin.qq.com/s/9D6veQcwxP9ChGqtqX1qoQ)
- [幸好没去虾皮!](https://mp.weixin.qq.com/s/Qi_uAStYfPUma1doUwWTwg)
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/weixin-rumrabbitmqzypjdg-53717e59-63c9-44bd-99d3-dd2c26fe68bb.png)
---
title: 计算机考研 408 统考该如何准备?
shortTitle: 计算机考研 408 统考该如何准备?
description: 2020年一战上海交通大学计算机系上岸。个人背景是应用数学跨考计算机,本科绩点3.75+,放弃了学校的保研…
tags:
- 优质文章
author: 若水如鱼
category:
- 知乎
head:
- - meta
- name: keywords
content: 研究生,考研,复习,计算机专业,计算机考研
---
最近有好几个球友问考研和保研的事情,也有一些球友问了二哥到底如何备考 408 的事情,那借这个机会,就分享一篇网友若水如鱼的考研经验贴,供大家借鉴和参考(二哥做了部分的删减和优化,并增加了一些其他的内容)。
>以下👇🏻是全文。
简单做以下自我介绍,我是2020年一战**上海交通大学**计算机系上岸的。算是跨考计算机,本科绩点 3.75+,放弃了学校的保研资格。408 的四门专业课中,除了自己额外选修的数据结构外,其余三门专业课完全没有接触过。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/zhihu-jisjkytkgrhzb-8b592fe3-70ca-4003-88b9-9c124cba6a43.jpg)
计算机基础综合408被誉为工科考研最难的专业课。(当然不包括清华的912哈哈哈~)包含4门计算机专业最核心的专业课,且没有官方指定的参考书,可以考察任何与这四门专业课相关的知识点。
而且几乎每次考试,都会出现一些在常规课本上找不到的知识点。出题老师为了在卷面150分内尽可能的涵盖知识点,往往试卷中的每一道题,都是多知识点交叉,这一特点在大题中体现的尤为突出。408由于是联考,所以每次出题的老师并不固定,往往试卷的风格也相当多变。
我个人正式的考研准备是从4月份开始,一直持续到12月考研前,总计**二百七十余天**
我在考研的初期,大概花了两天到三天的时间,把知乎和王道论坛上所有的408高分贴全部整理了一遍,因为虽然每个人之间个体存在差异,但我**坚信高分的备考经验之间是一定存在共性的**
我统计了这些经验贴中出现次数最多的参考书,标注出了每本书的精华部分。然后参照高分学长学姐们的复习规划,和反复被他们提及的复习方式,做了一份很详尽的复习安排。后面的复习过程,就可以用这份计划,确定自身的复习进度,做到心里有数。
**建议大家如果有时间的话,复习安排一定要自己亲自做**(由此可以看出,学习计划真的非常重要,球友们也一定要量身打造属于自己的学习计划)。因为每个人的实际情况不同,计划安排一定要根据自己的情况量身定做的,千万不要盲目照搬别人的计划,非常容易打乱了自己的节奏。
## 考研资料
下面说一下复习过程中需要用到的资料,首先是**王道****天勤**的全套复习全书,对于考408的同学来说这两套书不用多说,果断全部入手。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/zhihu-jisjkytkgrhzb-603fd711-e756-49fe-a3d1-eda7718e513a.jpg)
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/zhihu-jisjkytkgrhzb-690d0f2f-673b-4c3f-9f58-dac69766c8db.jpg)
然后必备的还有王道出的**真题解析**,这个也不用多说,重中之重,务必要研究透。最后用来练手的**王道和天勤模拟题**
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/zhihu-jisjkytkgrhzb-b3cf8043-06be-48e2-b3c8-27c49ad334d4.jpg)
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/zhihu-jisjkytkgrhzb-9b7b8f7f-6097-40d3-95b1-9f4ca1292be9.jpg)
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/zhihu-jisjkytkgrhzb-2f64d876-04ba-40de-96e5-3b3a28115e1f.jpg)
其实我相信很多跨考的同学,在一开始复习408这四门专业课的时候,都是一种很懵的状态。四门专业课太繁杂了,相互交织在一起不知道该从哪里入手,我认为比较合理的顺序是**数据结构**\--》**计算机网络**\--》**操作系统**\--》**计算机组成原理**
数据结构是基础中的基础,后面的三门专业课中或多或少都会涉及到数据结构的内容,所以我们把数据结构放在最开始学。然后是计算机网络,因为相对来说计网的知识点是相对孤立的,且以记背为主。需要理解的难点并不多,放在数据结构之后,可以作为一个缓冲,调节一下复习的节奏。然后是操作系统和计组,因为这两门课在一些知识点上是交叉的,有些经验贴可能会建议把两者放在一起复习。对于完全没有基础的跨考的同学,由于对这两门课整体的结构并没有一个宏观上清晰的认识,直接就把两门课结合在一起学,效果并不好。
我个人的建议是第一遍学的时候,先学操作系统了解软件,再学计组了解底层的硬件,先对总体有一个大概的印象。等到第二轮复习时,再把两门课相关联的知识点,结合在一起学习。两门课相互关联的知识点如存储,O/I等也是考试的重难点,非常容易混淆,需要多次反复理解。我第二遍复习才大体上理解了这些知识点,到第三遍复习才做到了融会贯通。(tips:对于这些知识点,可以考虑自己整理一张表格,对照记忆,对理解知识点很有帮助)
## 时间进度
我的专业课复习的时间进度具体如下:
4.1—4.20 结合教材,大话数据结构,天勤数据结构复习全书,复习数据结构。(一天4小时左右)
4.20—5.05 做完王道计算机网络上**选择题**,大题第一遍做的时候可以不做,复习主要看王道辅导书前面的知识点,有不懂的再参考教材。(有不懂的地方可以看看视频,如果学习能力较强的话,可以直接看书,比看视频节省很多时间)
>ps:王道前面整理的知识点真的很好,我一个完全没基础的小白,就靠直接看王道书前面的知识点,基本408入门完全足够了。
5.05—6.05 做完王道操作系统和计算机组成原理的王道复习书,复习过程同计算机网络,只做选择题,大概15天一本(一天4.5小时左右)
经过**第一轮复习**,对4门专业课的知识点有了一个粗浅的认识,会有很多不理解的知识点,留到第二轮复习再解决。接下来二刷的时候如果还是有很多知识点遗忘,不要紧,这是正常现象。
6.05—6.20 全面复习数据结构知识点,及第一轮复习遗留下来的难点。写完王道数据结构辅导书,**选择题和大题**
6.20—8.25 依照类似的步骤,完成计网,操作系统,计组的王道复习全书的**二刷**
8.25—9.25 对照天勤408复习全书整理的知识点和教材,进行对4门课的知识点进行**第三轮复习**,查漏补缺。这里快速的把天勤复习全书上的题刷完。(整理出一份自己的重要知识点汇总,和易混知识点的对比,这一步很重要,是对前三轮复习的升华)
9.25—10.15 做完408计算机综合11年真题,可以不按照卷子刷,但真题里的每道题每一个知识点都要搞懂,尤其是大题。408的大题比较难,但是有套路,摸清套路以后,就会发现每年的大题是很类似的。(第一次做的时候,找不到套路很正常,后面还会做很多遍真题,慢慢就会有感觉的)
10.15—11.15 **第四遍**复习专业课,把王道书上的错题重刷,复习巩固知识点。
11.15—12.20 做王道8套模拟题,和天勤8套模拟题,中间穿插真题的二刷,和专业课**第5轮复习**(其实王道的复习书上就会有真题,408的真题最后来来回回,起码会做到4,5遍)王道和天勤模拟题上的大题质量都一般,主要限时做上面的选择题,大题可以有选择性的做上面质量稍微高一些的题。
## 复习要点
下面我再对各科的复习要点进行一些补充。
### ***数据结构***
数据结构天勤的复习全书写的比较好,但是题目的数量不如王道多。所以复习的时候可以把天勤的书当教材,王道的书当习题集来用。可以买一本大话数据结构来当作补充的参考书。这本书比较通俗易懂,不推荐 严蔚敏版的数据结构,内容对于艰深了,对初学者十分劝退。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/zhihu-jisjkytkgrhzb-d1e76126-5fd6-4a84-a6f5-a7f724594edf.jpg)
第一遍刷全书的时候像算法题之类的大题可以考虑不写,等二刷的时候再写。算法题可以考虑看晴神写的算法笔记(星球的百度网盘里有),算法的原理讲的很清晰细致,而且书上都是可以直接运行的代码,对于初学者十分友好。
还有一本实战指南,上面是浙大PAT甲级和乙级题目的题解,其实对于跨考的同学,最好在准备初试的时候就顺便准备一下机试,这样不仅408中的算法题可以手到擒来,复试考机试的时候也更有底一些。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/zhihu-jisjkytkgrhzb-e3c9b92a-2fc0-4497-850f-2c4d481121d0.jpg)
我在考研中间,去考过一次9月份的**PAT甲级**,最后得了80+。虽然分数不算高,但也是对自己努力成果的一种检验。如果考浙大的话,PAT可以作为复试时机试的分数,考其他学校,也可以作为复试时向老师展示自身编程能力的证明。
### ***计算机网络***
因为我是跨考,对计网完全没接触过,刚开始学的时候其实是挺心慌的。所以开始学的时候是先看视频再做王道上的题,后来发现这样复习效率太低,索性就直接看王道每章之前总结的知识点,然后做题。其实直接看王道书前总结的知识点,对于专业课的第一轮复习来说是完全足够的,有不懂的地方再直接看看教材就行了。就计网的知识点总结来说,天勤相应的更好一些。计网的教材就只需要**谢希仁**的计算机网络一本书就可以了,写的非常详细。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/zhihu-jisjkytkgrhzb-fcde3b2f-067b-4431-8816-47fed10b9147.jpg)
等到第二轮,第三轮复习的时候,再把天勤复习全书和教材上的一些额外的知识点整理到王道的书上,或者单独做一份笔记都是可以的。
### ***操作系统***
操作系统我觉得王道的书编的挺不错的,直接看王道就行。第二章的pv操作,一般出现在408的大题,考察的频率还是挺高的,大概三年两考。但是我觉得王道和天勤上的某些题难度是要比真题大的,所以把王道天勤上的模拟题都能全部搞懂的话,pv操作这道题肯定是没什么问题的。第三章的内存管理和文件管理是重难点,最好多结合几本书来理解,这里推荐**操作系统概念**,是浙大的教材,在操作系统的软件这一块写的相当不错。有条件的同学也可以和同学多讨论讨论或者看看网课,千万不要自己死磕,真的很浪费时间。(我这块知识点,前前后后,直到第三轮复习才彻底搞懂)。最后的O/I章节可以看看**计算机操作系统**这本书,硬件讲的很不错。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/zhihu-jisjkytkgrhzb-237c6fef-3d48-4042-9e25-bbfdff18bd43.jpg)
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/zhihu-jisjkytkgrhzb-eac450ce-25f3-42c3-992a-eb7667811298.jpg)
### ***计算机组成原理***
计组算是我复习过程中困难最大的一门课了,其实现在回想起来,408中考察的机组并不难,甚至后期做真题时我最喜欢做的部分就是机组。只是因为我在复习的时候没有经验,在细枝末节上消耗了大量的精力,才在初期产生了计组很困难的错觉。
第二章的数制与编码可能会让很多跨考的同学很不适应,但其实里面比较难的效验码的内容只需记住就行,不必深究其原理,考试也很少涉及。还有乘法、除法、算数逻辑单元的设计一类的知识点非常复杂,但在考试中几乎不会涉及,能理解当然最好,不能理解的话,千万不要死磕。后面的部分我觉王道的知识点总结的相当不错,这里再推荐几本教材作为参考书**白中英**的计算机组成原理,这本书也是我的主力教材。**陆遥**的计组,对快表硬件之类讲的很清楚。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/zhihu-jisjkytkgrhzb-df42dabd-45ac-42a3-814a-116378f5740d.jpg)
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/zhihu-jisjkytkgrhzb-f21555d8-149f-4bbb-8657-90b7384e4972.jpg)
再一个就是**袁春风**版的计算机组成与系统结构。袁春风据说是以前的**命题人**,计组的真题里有时会出现其他书上没有的知识点,多半可以在袁春风的书上找到。这本书和主要参考了计算机组成与设计 硬件软件接口,也就是所谓的黑书,看了这本的话,黑书就基本可以不用买了。最后总结一下,计组这门课,开始学的时候会感觉很难很复杂,但当你真的学懂了以后,会发现整个脉络是十分清晰的。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/nice-article/zhihu-jisjkytkgrhzb-ec6e8002-9358-4025-8e86-136b5bdf9f3c.jpg)
就我自己看下来,计组不推荐黑书,这个观点可能在某些同学看来算是政治不正确了。但我觉得考研唯一的目的就是要拿高分,黑书的知识点和考研不是直接相关,用它来复习考试很低效。况且很多国内的教材也很优秀,而且章节编排完全符合考研,把国内教材用好,对付408足够了。
## 总结
对整个408的复习做一个总结,因为我是跨考,所以408的复习其实是占据了我考研复习非常多的精力的。前期每天**4个小时**,后期政治压力上来了,也基本保证每天**3小时**。408也是命题非常合理成熟的一门科目,当你水平到了,几乎不会有发挥失常的情况,它一定会给你一个满意的分数的。
最后强调一个被无数大佬强调过的408复习准则——反复多次。前期可以跳过不太重要的知识点,随着后面一轮一轮的复习,再把这些知识点融入到自己的知识体系中。还有就是真题一定好好研究,命题老师经常喜欢把之前的真题改改,又出成新的题目。
>参考链接:[https://www.zhihu.com/question/22823169/answer/1342552127](https://www.zhihu.com/question/22823169/answer/1342552127),整理:沉默王二
----
最近整理了一份牛逼的学习资料,包括但不限于Java基础部分(JVM、Java集合框架、多线程),还囊括了 **数据库、计算机网络、算法与数据结构、设计模式、框架类Spring、Netty、微服务(Dubbo,消息队列) 网关** 等等等等……详情戳:[可以说是2022年全网最全的学习和找工作的PDF资源了](https://tobebetterjavaer.com/pdf/programmer-111.html)
关注二哥的原创公众号 **沉默王二**,回复**111** 即可免费领取。
![](http://cdn.tobebetterjavaer.com/tobebetterjavaer/images/xingbiaogongzhonghao.png)
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册