价格: 19 学币

分类: Go

发布时间: 2021年12月8日 22:59

最近更新: 2021年12月19日 00:52

资源类型: SVIP

GoCN社区Go高级工程师实战营课程介绍

本课程来自GoCN社区原价3499元,是一门学习Go高级开发的视频教程,本视频教程围绕三大高阶内容板块带你深入分析理解Go核心技术,培养对标P6+ /D7级Gopher,让你快速提升四大核心能力。

GoCN社区Go高级工程师实战营GoCN社区Go高级工程师实战营

讲师:曹春晖(Xargin)

前蚂蚁金服技术专家,Go语言contributor

谢孟军(Asta)

GoCN社区创始人,世界知名Go技术专家

哪些人适合学习Go高级工程师实战营?

2年以上工作经验,具有一定的Go语言基础和工作基础,但在理论和技术上寻求突破的Go语言工程师

从其他语言(如Java,PHP)转Go,具有一定项目经验,用Go写过简单的项目,但不知道怎样利用Go的优势应对更为复杂的大型项目的工程师

你将学到以下核心内容

一. Go 程序是怎么跑起来的

教学目标:理解 Go 进程的启动过程,以调度循环串联相关的知识,理解 GPM 架构以及相关模型设计在不同阶段的问题及发展历史。

工作痛点:看着源代码,迷失在茫茫的数据结构和字段中;面试总是被人考调度循环,只是了解一些概念,无法融会贯通

详细内容:

Go 程序的启动过程

GPM 模型与调度循环

全局队列与局部队列

调度模型的发展历史

二. 语法背后的秘密

教学目标:通过学习 Go 内置的工具,了解如何将应用代码与底层代码做好对应;能够通过内置工具、调试器、源代码阅读对底层简单数据结构进行分析;

工作痛点:学会了语法,但是找不到实现代码,看别人的 blog 云里雾里;自己翻代码经常发现找不到实现部分,然后放弃。

详细内容:

学习基本的编译原理知识,了解基本的词法分析、语法分析、编译、链接流程

了解 Go 内置的编译/反编译工具:compile -S / objdump / SSAFUNC

使用工具分析 slice 的 append 实现

学习函数调用规约,Go 语言为什么可以实现多个返回值

其它语法糖分析:go func,select,channel send/recv

三. 神奇的内置数据结构

教学目标:学习 hashtable,timer 等复杂的数据结构实现;了解这些结构的进化历史和相关的优缺点;了解基本的 CSP 编程理念。

工作痛点:内置数据结构只会使用 api,碰到了相关的问题不知道该从何下手,对相关数据结构的设计缺乏宏观认识。

详细内容:

Go 语言的 hash 表实现:map 解析

Go 语言的 timer 实现演进

channel 的实现,CSP 理论基础

四. 编程语言与操作系统的桥梁

教学目标:了解基础操作系统接口知识,知道随着计算机体系结构的发展,系统调用是如何迭代进化的;知道如何去查询 syscall 的实现。

工作痛点:代码的行为和操作系统的关联关系难以理解,我写的 make 怎么就变成了 OS 的内存分配?

详细内容:

了解 linux syscall 的原理

理解 Go 语言是如何封装 syscall 的,哪些是 blocking syscall,哪些是 non blocking syscall

一些常见的 syscall 科普:clone,tgkill,futex,madvise

五. Go 的内存管理与垃圾回收

教学目标:理解基本的内存分配器原理;了解 tcmalloc 的设计理念;了解垃圾回收的繁多概念,建立相关的内存管理知识体系。

为什么内存分配要设计成多级结构?为啥 GC 的 stw 都已经 1ms 以下了,我的应用延迟还是这么高?

详细内容:

内存分配原理讲解

GC 设计讲解

memory barrier 讲解

GC 调步讲解

真实场景下的一些 GC 问题

六. Go 并发编程最佳实践

教学目标:理解常见并发编程模型:包括 fanin,fanout,or channel 等;知道常见的并发 bug;学会避免或排查线上的并发导致的 bug;

工作痛点:为什么给 string 变量赋值会 panic,难以理解;社区里的人对哪些操作是原子性的说法不一,令人困惑,我到底该相信谁。

详细内容:Go 语言常见并发模式一览(参考 concurrency in go)

常见的并发 bug

如何尽量避免并发 bug 被带到线上系统

如何排查线上的并发 bug(如死锁、data race,map con write fatal等)

GoCN社区Go高级工程师实战营课程大纲

Go程序是怎么跑起来的
语法背后的秘密
神奇的内置数据结构
编程语言与操作系统的桥梁
Go的内存管理与垃圾回收
Go并发编程最佳实践
netpoll与抢占式调度
答疑
Go人才培养体系和招聘
社区优秀开源框架对比
深入框架原理与实现
框架之上的业务分层
优雅的Go代码
知识落地-设计互联网高并发数据中台
服务.上线后-成为Go语言性能调优专家
答疑
如何参与Go开源项目
微服务在复杂业务场景的拆分难题
- -线互联网公司持续集成与持续部署实践
微服务的监控与可观测性
微服务基础设施-服务发现、检索、定时任务、MQ
大型互联网公司的稳定性密码(高可用、高并发背后的密码)
Cloud Native Go
Go语言前沿解析(泛型、modules)
Go语言与未来架构探索
答疑
实战营比赛学员分享会

GoCN社区Go高级工程师实战营课程视频随机截图:

GoCN社区Go高级工程师实战营

GoCN社区Go高级工程师实战营资源目录截图

GoCN社区Go高级工程师实战营