Go爬虫学习笔记(二)
创始人
2024-06-01 05:42:31
0

3 进阶路线:如何深入学习Go语言?

  • 时间与复利思维

    • 一万小时定律 - MBA智库百科 (mbalib.com):大量训练。
  • 思维模型

    • 类比:类比旧知识
    • 知识组块:将知识拆分
    • 知识体系:知识之间的联系:wiki、笔记双链,一条条链构成自己的知识体系
    • 实践与输出:学习金字塔1
    • 已知与未知
  • 垃圾回收

    image

    • 准备阶段
    • 并行标记阶段
    • 辅助标记阶段
    • 标记清扫阶段
  • Go进阶

    • 切片底层结构
    • 哈希表底层结构
    • 协程调度
    • 内存管理
    • 线程、协程、进程
    • GMP模型2
  • GMP模型

    • 在 GMP 模型中,G 代表的是 Go 语言中的协程(Goroutine),M 代表的是实际的线程,而 P 代表的是 Go 逻辑处理器(Process)。Go 语言为了方便协程调度与缓存,抽象出了逻辑处理器的概念。在任一时刻,一个 P 可能在本地包含多个 G,同时,一个 P 在任一时刻只能绑定一个 M。
      image

    • 随着我们对协程、运行时协程调度的理解越来越深入,我们的知识组块、知识体系都可能会有所更新。例如,下面这个改进后的 GMP 模型就加入了本地运行队列和全局运行队列。它可以让我们更深入地看到调度器的运作模式,每个逻辑处理器 P 中都有单独的本地运行队列用于存储协程,这是为了减少并行时锁的使用。
      同时我们也有全局共享的全局运行队列、本地运行队列可以获取全局运行队列中的协程,全局运行队列也可以接收本地运行队列中的协程。
      image

学习

学习金字塔

image

学习金字塔指出,通过阅读或是视听的方式接收到的信息,能够留住的低于 30%。而通过实践能够留下的知识却高达 75%。大量的案例都表明,软件工程或者说编程是一门实践的科学。纸上得来终觉浅,我们需要反复的实践,才能在报错与调试的折磨中一步步成长。

不过要注意的是,实践并不是简单的重复,而是要不断地用一项超出你当前能力的任务挑战自己,尝试它,分析你在完成它的过程中的表现,然后纠正错误。

学习金字塔同时指出,最好的学习方式其实是教给其他人,这也是费曼学习法的核心要义。当我们把一个知识点从 0 到 1 教给了他人,就意味着我们真正掌握了它。很多人会倾向于用复杂的词汇来掩盖他们不明白的东西,但这其实只是在糊弄自己,因为我们不知道自己也不明白。

所以我鼓励你更多地输出自己的知识,这其实也是一个学习的过程。一个闭源的系统,最终将由于熵增而走向死亡,只有不断地接收新的和有用的知识,才能保持活力。

image

Go思维导图

image

作业

Go知识图谱

人的大脑也有聚焦模式(focused mode)和发散模式(diffuse mode)两种思维方式,你认为这种现象是如何指导你的学习的?

聚焦模式(focused mode)和发散模式(diffuse mode)两种思维方式。 在每个阶段中这两种学习模式,是交替使用的。

  • 聚焦模式会让我们自己更专注。可往往遇到自己知识盲区时,尤其是无处可学需要自己创新时,又或者无法理解某个知识点时,聚焦模式反而会限制我们的视野。 此时切换成发散模式,不再单独聚焦在需要解决的问题上,往往能给我们带来全新的思路。 发散并不是漫无目的的发散,而是有自顶向下的大局观意识,从而做到形散而神不散。
  • 发散模式带给我们的灵感,往往需要我们自己有着足够的相关知识储备,才能在不同的知识中碰撞出火花。

推荐资料

  1. 一万小时定律 - MBA智库百科 (mbalib.com)
  2. 如何学习:学习困难科目的实用思维方法 Learning How to Learn
  3. A Mind for Numbers 芭芭拉《学习之道》
  4. 如何高效学习
  5. Scalable Go Scheduler Design Doc:https://docs.google.com/document/d/1TTj4T2JO42uD5ID9e89oa0sLKhJYD0Y_kqxDv3I3XMw/edit#heading=h.mmq8lm48qfcw

·


  1. 学习金字塔

    ↩︎
    • GMP模型

    • 在 GMP 模型中,G 代表的是 Go 语言中的协程(Goroutine),M 代表的是实际的线程,而 P 代表的是 Go 逻辑处理器(Process)。Go 语言为了方便协程调度与缓存,抽象出了逻辑处理器的概念。在任一时刻,一个 P 可能在本地包含多个 G,同时,一个 P 在任一时刻只能绑定一个 M。
      image

    • 随着我们对协程、运行时协程调度的理解越来越深入,我们的知识组块、知识体系都可能会有所更新。例如,下面这个改进后的 GMP 模型就加入了本地运行队列和全局运行队列。它可以让我们更深入地看到调度器的运作模式,每个逻辑处理器 P 中都有单独的本地运行队列用于存储协程,这是为了减少并行时锁的使用。
      同时我们也有全局共享的全局运行队列、本地运行队列可以获取全局运行队列中的协程,全局运行队列也可以接收本地运行队列中的协程。
      image


    「此文章为3月Day10学习笔记,内容来源于极客时间《Go分布式爬虫实战》,强烈推荐该课程!/推荐该课程」 ↩︎

上一篇:7.2 向量的坐标

下一篇:速通Java虚拟机

相关内容

热门资讯

人物描写英语作文(推荐6篇) 人物描写英语作文 篇一A Courageous SoldierI want to share the...
我战胜了恐惧英语作文【最新3... 我战胜了恐惧英语作文 篇一Overcoming My Fear of Public Speaking...
奥运英语作文 奥运会上中国队... 奥运英语作文 奥运会上中国队能否夺得最多的金牌? 篇一China's Prospects for W...
初一英语精品范文【精彩6篇】 初一英语精品范文 篇一My Favorite HobbyI have many hobbies th...
英语作文范文回信(优选6篇) 英语作文范文回信 篇一Dear Amy,I hope this letter finds you i...
自我介绍英语作文【优选6篇】 自我介绍英语作文 篇一My Journey of Self-DiscoveryHello, ever...
参加英语比赛作文【精简3篇】 参加英语比赛作文 篇一我的英语比赛经历上周,我参加了一场英语比赛。这是我第一次参加如此重要的比赛,我...
介绍北京的英语作文(优秀3篇... Introducing BeijingArticle OneBeijing, the Capital...
My pet英语作文(经典6... My Pet 英语作文 篇一My Beloved CatI have always been an ...
旅行的英语作文 旅行的英语作文(精选21篇)  在平日的学习、工作和生活里,许多人都有过写作文的经历,对作文都不陌生...
祝贺别人晋升英语作文范文【最... 祝贺别人晋升英语作文范文 篇一Congratulations on Your PromotionDe...
万圣节的西方的鬼节【优质6篇... 万圣节的西方的鬼节 篇一万圣节是西方国家的一个重要节日,它被称为“鬼节”,是因为在这一天,人们会扮成...
我的暑假作文 我的暑假英语作文8篇  在暑假里有人选择宅在家里,偷的半日闲;有人选择远行,背上行囊远行。无论是何种...
英语作文【经典6篇】 英语作文 篇一:The Importance of Learning EnglishIn today...
英语作文道歉题目及范文【优选... 英语作文道歉题目及范文 篇一题目:Apologizing to a Friend for Forge...
我的铅笔盒英语作文(精选3篇... 我的铅笔盒英语作文 篇一Title: My Pencil CaseIntroduction: My ...
拯救动物的英语作文【实用3篇... Title: Saving AnimalsEssay 1:Saving AnimalsAnimals...
戒烟的英语作文(经典3篇) 戒烟的英语作文 篇一: The Importance of Quitting SmokingSmok...
描写我的学校初中英语作文【实... 描写我的学校初中英语作文 篇一My Wonderful SchoolI am a student a...
网络安全英语作文范文【优秀6... 网络安全英语作文范文 篇一Title: The Importance of Cybersecurit...