Go 并发编程实战课- 极客时间课程推荐/优惠

Go 并发编程实战课--极客时间课程推荐/优惠

鸟窝带你攻克Go并发编程难题
晁岳攀(鸟窝)前微博技术专家,知名微服务框架 rpcx 作者
专栏 | 22讲 | 26265人已学习
优惠价¥59原价:99
官网优惠购买

版权声明

本站非极客时间官网,与官方无任何关系。我们不提供课程下载或详细内容,仅作为课程分享和推荐平台。我们鼓励大家支持正版,尊重创作者的劳动成果,这样不仅能帮助创作者持续产出优质内容,也能让自己获得更好的学习体验。请通过官方渠道购买和学习课程,感谢您的理解与支持。

课程详情

你将获得

  • 一个丰富完整的并发原语知识库;
  • 彻底搞懂并发原语的实现原理及使用技巧;
  • 20+大型项目的真实踩坑案例及解决方案;
  • 分布式场景中并发问题的应对策略。

课程介绍

我们知道,Go语言部署简单,自带完善的工具链,不仅容易上手,而且执行性能非常好,现在已经被越来越多的人当成主要的编程语言。最重要的是,它天然支持并发,这也是它的最大优势。

但是,并发编程入门容易,想要精通却很难,主要有五大问题:

  1. 在面对并发难题时,该选择哪个并发原语来解决问题呢?
  2. 如果多个并发原语都可以解决问题,那么,究竟哪个是最优解呢?比如说是用互斥锁,还是用Channel。
  3. 并发编程不像是传统的串行编程,程序的运行存在着很大的不确定性,我们怎么才能让相应的任务按照我们设想的流程运行呢
  4. 有时候,按照正常理解的并发方式去实现的程序,结果莫名其妙就panic或者死锁了,排查起来非常困难
  5. 已知的并发原语都不能解决并发问题,程序写起来异常复杂,而且代码混乱,容易出错,该怎么办呢?

鸟窝老师在多年的项目实战中,梳理了一套并发编程的知识体系,他把独立的知识点汇总到Go并发编程学习矩阵的“两大主线”之中,希望帮助你系统地掌握并发编程技能。本课程几乎涵盖了市面上可以见到的所有并发原语,而且,他会带领你深入地理解各种并发原语的实现机制,全面掌握它们的功能和使用方法。同时,还会具体讲解流行的Go开发项目中的常见错误场景及应对方案,全方位提升你的实战能力。

课程模块设计

课程分为5大模块。

  • 基本并发原语:从标准库中的基本并发原语入手,详细介绍互斥锁Mutex、RWMutex、Waitgroup、Cond、Pool、Context等的实现机制和使用技巧,带你搞定并发编程中的常用类型。
  • 原子操作:具体介绍标准库中的原子操作,这是其它并发原语的基础。学会了这部分内容,就可以自己创造新的并发原语。
  • Channel:Channel类型是Go语言独特的类型,不仅会介绍它的基本用法,而且还会详解它的处理场景和应用模式,帮你规避陷阱。
  • 扩展并发原语:目前来看,Go开发组不准备在标准库中扩充并发原语了,但是还有一些并发原语应用得非常广泛。课程会重点讲解信号量、SingleFlight、循环栅栏、ErrGroup等,让你能在处理一些并发问题时事半功倍。
  • 分布式并发原语:分布式并发原语是应对大规模的应用程序中并发问题的并发类型,主要会介绍使用etcd实现的一些分布式并发原语,比如Leader选举、分布式互斥锁、分布式读写锁、分布式队列等,带你攻克分布式场景中的并发难题。

课程目录

开篇词

  • 开篇词 | 想吃透Go并发编程,你得这样学!

基本并发原语

  • 01 | Mutex:如何解决资源并发访问问题?
  • 02 | Mutex:庖丁解牛看实现
  • 03|Mutex:4种易错场景大盘点
  • 04| Mutex:骇客编程,如何拓展额外功能?
  • 05| RWMutex:读写锁的实现原理及避坑指南
  • 06 | WaitGroup:协同等待,任务编排利器
  • 07 | Cond:条件变量的实现机制及避坑指南
  • 08 | Once:一个简约而不简单的并发原语
  • 09 | map:如何实现线程安全的map类型?
  • 10 | Pool:性能提升大杀器
  • 11 | Context:信息穿透上下文

原子操作

  • 12 | atomic:要保证原子操作,一定要使用这几种方法

Channel

  • 13 | Channel:另辟蹊径,解决并发问题
  • 14 | Channel:透过代码看典型的应用模式
  • 15 | 内存模型:Go如何保证并发读写的顺序?

扩展并发原语

  • 16 | Semaphore:一篇文章搞懂信号量
  • 17 | SingleFlight 和 CyclicBarrier:请求合并和循环栅栏该怎么用?
  • 18 | 分组操作:处理一组子任务,该用什么并发原语?

分布式并发原语

  • 19 | 在分布式环境中,Leader选举、互斥锁和读写锁该如何实现?
  • 20 | 在分布式环境中,队列、栅栏和STM该如何实现?

结束语

  • 结束语 | 再聊Go并发编程的价值和精进之路

作者介绍

晁岳攀,网名鸟窝,前微博技术专家,知名微服务框架rpcx的作者,先后在摩托罗拉、Comcast担任开发和管理工作,著有《Scala集合技术手册》一书,并在台湾发行了繁体版。 在微博研发平台架构中心担任资深架构师期间,使用Go参与开发多个基础架构系统,并负责中国版权链,微博下一代的Redis集群系统、数据库资源云等系统的设计和开发,有大量的高并发高吞吐的服务器开发经验。

推荐

零基础实战机器学习 - 极客时间课程推荐/分享/优惠/折扣
零基础实战机器学习
AI 时代你的机器学习第一课
黄佳新加坡科研局资深研究员
专栏 | 20570人已学习
优惠价¥59原价:99
官网优惠购买
透视HTTP协议 - 极客时间课程推荐/分享/优惠/折扣
透视HTTP协议
深入理解HTTP协议本质与应用
罗剑锋(Chrono)前奇虎360技术专家,Nginx/OpenResty开源项目贡献者
专栏 | 64857人已学习
优惠价¥59原价:129
官网优惠购买
Kafka核心源码解读 - 极客时间课程推荐/分享/优惠/折扣
Kafka核心源码解读
从底层到实战,深度解析源码
胡夕Apache Kafka Committer,老虎证券技术总监
专栏 | 19741人已学习
优惠价¥59原价:99
官网优惠购买
AI数据分析课 - 极客时间课程推荐/分享/优惠/折扣
AI数据分析课
AIGC时代数据分析可以很简单
尹会生珠海太乙人工智能技术合伙人
视频课 | 1179人已学习
优惠价¥59原价:129
官网优惠购买
苏杰的产品创新课 - 极客时间课程推荐/分享/优惠/折扣
苏杰的产品创新课
一次从想法到产品的低成本实验
苏杰良仓孵化器创始合伙人,《人人都是产品经理》系列图书作者
专栏 | 19347人已学习
优惠价¥59原价:129
官网优惠购买
玩转webpack - 极客时间课程推荐/分享/优惠/折扣
玩转webpack
全方位掌握webpack核心技能和优化策略
程柳锋腾讯高级工程师,IVWEB团队社区和工程化负责人
视频课 | 27657人已学习
优惠价¥68原价:199
官网优惠购买